it-swarm.it

In che modo i programmatori in Occidente vedono i programmatori in Oriente?

L'altra metà di questa domanda: Come vedono i programmatori in Oriente i programmatori in Occidente?


La parte orientale del mondo (India/Cina/Filippine) fornisce principalmente servizi di outsourcing nel mondo occidentale (USA ed Europa).

Hai l'esperienza di lavorare con team offshore? Se sì, com'è stato?

Possiedi idee o opinioni generalizzate sui programmatori orientali (ad es. Sono cooperativi, consegnano in tempo o svolgono un lavoro di qualità?). Su cosa si basano?

101
Vinoth Kumar C M

Hmm Viste interessanti.

Vorrei solo buttare il mio.

Vivo in India (sono indiano) e ho programmato da quando avevo 11/12. Tutto quello che ho finora è un'istruzione superiore e, cosa interessante, ho fatto due cose finora, ho insegnato presso un Indian Computer Institute e in questo momento sviluppo freelance (e mi sono procurato un progetto con un cliente MOLTO di alto profilo)

Quindi due cose che penso siano vere da dove mi trovo:

Certo, le persone sono persone, ma la mentalità indiana sulla vita e sull'istruzione è molto diversa qui, per i mesi in cui ho insegnato, ho visto i genitori spingere i loro figli nell'IT solo perché pensano che otterrà denaro o qualcosa del genere, ho anche insegnato agli studenti conseguire/terminare la laurea in ingegneria e laurea e 98 su 100 non possono scrivere alcune righe di codice in C. (Dimentica il codice di qualità).

Il corso State Computer Science qui, hanno Turbo C come parte del curriculum, C++ per la maggior parte delle persone è C ma usando solo cout per stampare.

Per quanto riguarda lo sviluppo, con questo tipo di laureati, ti aspetti di trovare tonnellate di "ingegneri" là fuori, che codificano cose orribili. Ho incontrato "aziende" di piccole dimensioni che non usano alcun controllo del codice sorgente, non avranno nemmeno idea di quali siano i test unitari.

È triste che io abbia così tanto da dire e mi fa male. MA tutti qui non sono così. Ci sono così tanti di noi, che, forse, l'impressione che la gente ottiene. lol

In qualche modo, anche avere successo qui significa spostarsi altrove, perché non c'è un vero spazio per crescere e affinare davvero le tue abilità. Naturalmente ci sono gli smart-head di IIT e di altri college importanti che conoscono le loro cose (alla fine si trasferiscono anche loro)

Ma la linea di fondo è che l'educazione informatica qui è piuttosto triste secondo me.

81
gideon

Disclaimer: vivo nell'Europa centro-orientale, decidi tu se contare come orientale o occidentale :-) In quanto tale, ho lavorato a progetti esternalizzati nel nostro paese dall'Europa occidentale e ho avuto dubbi dai colleghi e dai dirigenti più occidentali riguardo alle nostre capacità, simile a quello che gli indiani devono sperimentare in tali situazioni.

OTOH Ho lavorato con diversi sviluppatori indiani e russi su due grandi progetti. Il primo riguardava anche un componente sviluppato interamente da un subappaltatore indiano, che era facilmente il codice pezzo più orribile a cui abbia mai avuto accesso (non posso dire "il codice più orribile che abbia mai letto", perché vedendo che il singolo più grande il file sorgente misurava oltre 600 Kbyte di dimensioni (o AFAIR circa 30K righe), l'ho chiuso rapidamente e potevo solo pregare che non potessi mai aver bisogno di toccarlo. La mia preghiera è stata ascoltata).

Quest'ultima (su cui sto attualmente lavorando) è stata subappaltata a 3 diverse società, alcune delle quali hanno applicato diversi programmatori indiani. Abbiamo ripulito il risultato negli ultimi 1,5 anni e rimane ancora abbastanza lavoro per il prossimo futuro.

Nella mia vita personale, ho vissuto in India per oltre 3 mesi in un'era precedente della mia vita, quindi probabilmente conosco più del paese e dei suoi abitanti che un occidentale medio. Personalmente mi piacciono molto gli indiani.

La mia esperienza personale è stata che le stesse differenze culturali evidenti che esistono tra il popolo occidentale e quello indiano in generale, sono osservabili anche tra i programmatori. Gli indiani sono di solito molto diligenti nell'esecuzione di qualsiasi compito concreto che viene loro affidato, ma non necessariamente vedono o addirittura sentono il bisogno di capire il quadro più ampio. Che può facilmente portare a software di bassa qualità.

Un altro potenziale problema è la resistenza culturalmente radicata degli indiani a dire di no a qualsiasi richiesta, poiché ritengo che sia considerato maleducato da loro. Se vai in un negozio di alimentari indiano e chiedi coperte/gioielli/pinne di squalo/qualunque cosa, il proprietario dirà "sì signore, in un momento", quindi manda il suo ragazzo in un altro negozio nelle vicinanze per recuperare il prodotto e te lo presenta con orgoglio. Che è davvero una buona pratica commerciale. Tuttavia, se lo stesso si applica al subappalto di un progetto di sviluppo SW con una pianificazione impossibile fissa, i risultati possono essere disastrosi. Questa è solo una speculazione da parte mia, non ho prove concrete sul fatto che questo sia davvero un fattore nell'esternalizzazione dello sviluppo di SW in India.

Un primo esempio di futile diligenza nel nostro attuale progetto è stato l'implementazione di uno schema di monitoraggio delle prestazioni. L'idea era di passare intorno agli oggetti che raccolgono le statistiche sulle prestazioni. Tuttavia, la soluzione si è rivelata un rallentamento dell'app tanto che non è mai stata realmente utilizzata. Tuttavia, i suoi resti nel codice sono stati lasciati lì per noi per ripulire. In pratica, ciò significava passare un parametro oggetto aggiuntivo a tutti (circa 6000) i metodi nel codice. Il ragazzo che lo ha fatto ha anche aggiunto un commento al Javadoc di ciascun metodo, osservando che il parametro extra è stato aggiunto per le misurazioni delle prestazioni! Ora, posso solo meravigliarmi della diligenza di quel ragazzo, facendo il suo lavoro attraverso tutti i 6000 metodi e inserendo fedelmente quei commenti Javadoc ovunque. OTOH, a) come notato in precedenza, lo schema non è mai stato utilizzato in pratica e sono sicuro che i suoi effetti di performance hogging potrebbero essere stati rilevati da un prototipo iniziale, rendendo l'intero lavoro non necessario, b) tutti i commenti Javadoc contenevano lo stesso errore di ortografia , c) tali commenti non appartengono comunque a Javadoc.

Non intendo dire che tutto ciò sia stata colpa dei poveri sviluppatori indiani (tranne l'uso improprio del Javadoc). IMO è molto più colpa dei manager che contraggono senza pensarci i progetti senza monitorare i risultati, condurre severi test di accettazione e garantire l'adeguata qualità del codice e della documentazione. Per non parlare degli schemi di pagamento basati sull'ora che sicuramente non rendono alcun subappaltatore interessato a risparmiare tempo di sviluppo.

Tuttavia, penso che sarebbe difficile trovare sviluppatori in Occidente per svolgere compiti simili con lo stesso livello di coerenza e senza lamentele.

Abbiamo anche subappaltato le attività di test in questo progetto attuale a un gruppo di tester indiani. Personalmente siamo solo in contatto con uno di loro, quindi non ho idea di quanti siano in totale. Tuttavia, questo ragazzo è un gioiello di tester, una risorsa preziosa per qualsiasi progetto. Oltre ad essere diligente e approfondito, pone molte domande per comprendere il quadro generale, spesso mette alla prova anche più di quanto ci si aspettasse e riporta problemi riscontrati in modo preciso e descrittivo.

118
Péter Török

Mi sono occupato di tre progetti che erano (principalmente) "delegati" a risorse offshore (emisfero orientale). Uno dei tre casi usava un gruppo (o forse solo un ragazzo - ne trattava solo uno, ma non era sicuro di quanti altri avesse fatto lavoro) nella Russia orientale. Hanno fatto un buon lavoro e il progetto è progredito abbastanza bene, oltre alla necessità di lavorare sull'interfaccia utente per risolvere alcuni problemi minori con la formulazione da parte di persone per le quali l'inglese era una seconda (o forse terza) lingua.

Le altre due erano una storia piuttosto diversa. Per caso o no, in entrambi questi casi i programmatori erano in India. In un caso, essenzialmente tutto ciò che hanno fatto è stato trattato come nient'altro che un prototipo - utilizzabile (in una certa misura) per testare possibili progetti, ma tutto ciò che hanno scritto ha dovuto essere gettato via e sostituito per ottenere il codice del livello di produzione. Sembravano esemplificare ciò che penso sia la "mentalità ISO 9000". Hanno mostrato un'adesione quasi religiosa alle politiche e alle procedure, ma una mancanza quasi completa di comprensione del problema che avrebbe dovuto essere risolto. Il loro codice potrebbe essere il più goffo che abbia mai visto.

Nell'altro caso, il progetto è stato alla fine abbandonato. Era stato lo schema frenetico di un vicepresidente recentemente promosso, e sono abbastanza sicuro che l'idea fin dal primo giorno fosse quella di ridurre al minimo le spese, pur potendo ancora dirgli che la sua idea era in sviluppo attivo. Sebbene il codice che abbiamo ottenuto fosse del tutto inutile, sarebbe difficile incolpare molto l'appaltatore, dal momento che nessuno sforzo è stato mai fatto nella gestione del progetto o addirittura solo per ottenere loro una specifica utilizzabile. Il loro codice iniziò male e la qualità degenerò rapidamente quando divenne evidente che a nessuno importava.

30
Jerry Coffin

Sono un laureando di 21 anni dall'India negli ultimi anni di corso di laurea di 4 anni in Informatica e Ingegneria.

L'idea stessa di scrivere questo era di dire che l'India è molto più di un hub di outsourcing. Spero che l'Occidente la veda in questo modo e invece di assorbire il talento, l'Occidente dovrebbe creare più hub in India. Ci sono alcuni contenuti offensivi a venire, ma se capisci il quadro più ampio, capirai cosa sto cercando di dire.

L'istruzione in India è in uno stato molto inquietante, con una forza lavoro prodotta ogni anno che non ha abilità tecniche assolutamente orrende. Il sistema educativo non è affatto competitivo in termini di innovazione o imprenditorialità. questo ha portato il nostro paese a enormi imbarazzi come il recente computer da $ 10 sviluppato in modo indigeno (che si è rivelato essere un cinese economico Android, gestito solo da una società indiana), o una precedente rivendicazione di un'altra svolta tecnologica (che si è rivelata una chiavetta) Gli istituti di istruzione sono totalmente disconnessi dal mondo reale della tecnologia e sono più interessati agli studenti che reinventano la ruota, tutti in nome dell'innovazione. Gli istituti di istruzione, tutti li odiano.

Venendo in luoghi dove almeno ti aspetti di apprendere alcune abilità di sviluppo:

Ho avuto esposizione ad alcune strutture di formazione in India oltre ai miei istituti di istruzione. La programmazione e lo sviluppo del software avvengono a due livelli, sviluppo a livello di applicazione e sviluppo a livello di sistema.

Per lo sviluppo di applicazioni, la maggior parte dei matricole in India sono reclutate in serie dalle aziende per rivendicare una panchina di programmatori e ottenere più progetti. Alla fine della giornata, c'è qualità compromessa perché il processo di assunzione è assolutamente stupido. A volte, il talento è sprecato nel rendere le persone brave nel loro lavoro, in cose stupide come la creazione Java frame e creazione di semplici UI WinForm e ASP.NET (sto parlando di assunzioni più recenti e come sostenuto da alcuni, anche se non ne sono sicuro). Se non si considerano buone pratiche di ingegneria del software, quel tipo di codifica può essere fatto da un selezionatore di 7 ° grado.

Ma allo stesso tempo, ci sono programmatori e sviluppatori indipendenti che hanno un vivo interesse per le cose. Sono come gli eroi non celebrati che hanno perso ogni speranza e sono meno interessati a cambiare il mondo. Tutto ciò che vogliono è trarre il massimo dalle loro capacità, quindi è tutto basato sul denaro e sull'andare all'estero. Mentre i nostri corsi sono enormemente limitati al software di sistema (programmazione in C con TurboC !!! per 4 anni difficili, C++ stupido e vago senza concetti orientati agli oggetti adeguati l'uso di cout in un programma C non è C++, ASM e più programmazione in C usando gcc), quando siamo in un'azienda, siamo principalmente fatti per lo sviluppo di applicazioni (ASP.NET, WinForms, J2EE). Fondamentalmente, un ingegnere informatico è fatto per fare il lavoro di un ingegnere del software. Sì, conoscere l'informatica aiuta, ma non conoscere la corretta ingegneria del software ostacola troppo il processo e arriva a precipitare l'intero sistema. È un errore #.

Citerò un semplice esempio. Ho aderito a un istituto di formazione per il mio progetto dell'ultimo anno e volevano che creassi un sito Web ASP.NET che sarebbe stato un sistema di inventario (prenotazione di hotel, CRM quel genere di cose). Sì, non è un compito facile, ma secondo me non vale la pena lavorare su un progetto. Reinventerà la ruota e questi progetti sono enormi per natura nella vita reale. Consegnato in 6 mesi da un gruppo di 3, puoi capire il tipo di sistema inutilizzabile ridotto che ne deriverà. Gli istituti non si stressano troppo in profondità e sono più interessati a "non spaventare lo studente che dice loro troppo" e "dare una visione d'insieme e far loro imparare il resto da soli". Alla fine, ciò che le persone sviluppano nei progetti non è nemmeno un prototipo completamente testato, per non parlare del fatto che può essere utilizzato nella vita reale.

Ho preso il mio argomento, un sistema di navigazione in tempo reale con guida vocale. Sto usando WPF, l'API di Google Maps e tutte le ultime tecnologie che posso. Per una buona pratica di ingegneria del software, sto usando il controllo del codice sorgente, usando MVVM e darò uno sguardo approfondito a qualsiasi altra cosa che conosco. Ho 21 anni e sono laureato. Immagino che alla mia età, le persone nell'ovest siano ancora in fase di apprendimento e diventino laureati in età avanzata. Ciò rende i laureati occidentali molto meglio e più competenti. Abbiamo quantità ma nessuna qualità.

In India, il livello di lavoro che sto svolgendo per il mio progetto non è generalmente previsto per un progetto universitario dell'ultimo anno. Ma lo farò perché lo voglio. Allo stesso tempo, ci sono altri nel mio gruppo che si sentono a proprio agio nel fare un progetto in ASP.NET, creare 5-7 pagine, eseguire query sul database, riempire le viste della griglia e non preoccuparsene della sicurezza. Diamine, anche quei siti web freelance hanno migliori offerte di lavoro (clone di YouTube, Google instant + X = Y Mashup ..)

Sei mesi dopo, troverai le stesse persone che lavorano in un'azienda a cui esternalizzi la tua attività e mi troverai anche lì. Alle persone piacciono, superano le persone come me da dieci a 1 :(

per essere precisi e non indignati, in tutta la mia carriera educativa e conoscenza con oltre ~ 500 persone, ho visto esattamente 4 che avevano il livello di esperienza che li considererei per lavorare su un progetto con me)

Alla fine, tutti i laureati indiani scriveranno una buona documentazione perché è teoria, ma non si aspettano da loro alcun codice a prova di errore.

Venendo al software di sistema, lo stesso è il caso. Un mio amico sta lavorando con il Android NDK e sta lavorando a un progetto dal vivo in un'azienda. È fortunato ad avere questo progetto e lo invidio, ma questo livello di lavoro accade in Anche l'India: un altro anziano del mio college ha sviluppato un clone kinect (mouse multi-touch, come nei rapporti sulle minoranze) nel suo progetto dell'ultimo anno usando solo 2 webcam economiche. Allo stesso modo, ci sono altri che copiano codici da Internet e in qualche modo ottengono una laurea reinventare la ruota.

La mia ultima parola, non aspettarti una qualità compromessa in tutta l'India e non dare per scontato gli indiani come manutentori di software a basso costo e adatti solo per lavori di manutenzione in outsourcing.

Inoltre, non aspettarti che qualcuno che abbia una buona preparazione scolastica in termini di voti scriva un buon software. Il sistema educativo dell'India è tutto orientato alla teoria, non c'è alcun accenno pratico, a volte, sapere di più o la volontà di saperne di più può metterti nei guai da insegnanti che si sentono intimiditi. Tuttavia, i bravi programmatori cercano pascoli più verdi in una carriera migliore e non solo un buon lavoro, ci sono altri che vogliono trovare un buon "lavoro", andare in giro per una Honda City, mangiare nella Cina continentale e vivere felici e contenti .

Mi piace di più Audi Btw. :)

22
r3st0r3

La gente è la gente. Alcuni programmatori sono buoni programmatori, altri programmatori sono cattivi programmatori. Alcuni programmatori difettosi possono diventare buoni programmatori con il tempo, mentre il tempo non può mai beneficiare di altri programmatori cattivi.

La posizione tende a non essere un fattore qui. Ma forse l'opportunità potrebbe.

Stavo chiedendo cosa significassero le parole "Errore di sintassi errata OK" in GW Basic quando avevo 8 anni. Sono cresciuto con i computer. Non tutti hanno questo vantaggio. Tuttavia, i tempi stanno cambiando e gli 8enni di oggi hanno più accesso alla tecnologia rispetto agli 8 di ieri.

Ma è importante rendersi conto che la programmazione è molto più che saper usare un computer. Funziona molto più in profondità. Ecco alcune caratteristiche chiave che separano i buoni programmatori (e quelli che hanno solo bisogno di tempo) da quelli realmente cattivi:

  • I bravi programmatori sono curiosi
  • I bravi programmatori leggono blog e articoli online e cercano di saperne di più sul loro campo
  • I bravi programmatori rispondono alle domande su Stack Overflow
  • I bravi programmatori con 1-2 anni di esperienza o più comprendono che la loro formazione in Informatica non è stata una perdita di tempo
  • I bravi programmatori possono pensare fuori dagli schemi
  • I buoni programmatori sono anche buoni leader
  • I buoni programmatori sono proattivi e non hanno bisogno di sapere cosa fare

Soprattutto, i buoni programmatori sono anche buoni comunicatori. I migliori programmatori sono quelli che possono convincere gli altri. Sono quelli che possono pazientemente discutere un problema con un altro pari fino a quando non viene trovata una soluzione.

La più grande sfida è la comunicazione.

Qualunque sia la sfida, non stereotipare mai te stesso o gli altri. Hai lo stesso potenziale di chiunque altro e viceversa. Ricorda solo che puoi fare tutto ciò che ti viene in mente!

22
jmort253

Attenzione, generalizzazioni grossolane in anticipo. I punti di vista espressi non sono condivisi da tutti. In effetti, l'autore potrebbe anche non crederci.

Gli sviluppatori occidentali hanno paura degli sviluppatori orientali. Sentiamo più volte che i nostri lavori alla fine saranno esternalizzati. Questo è un brutto inizio per qualsiasi relazione. A peggiorare le cose, ci viene costantemente ricordato che le nostre educazioni sono inferiori. Gli sviluppatori orientali sono più economici, più intelligenti e tollerano più problemi. La nostra esperienza professionale con gli sviluppatori orientali non ha importanza perché è avvelenata dalla paura.

18
Scant Roger

Lavoro da 3 anni con sviluppatori indiani (sono italiano). La gente è la gente. Abbiamo esternalizzato principalmente perché avevamo bisogno di una squadra, e in Italia è difficile trovare una squadra, soprattutto in lingue non popolari come Delphi. Quindi il motivo principale è trovare una squadra, non costi.

Comunque la squadra che abbiamo trovato era molto buona perché aveva un ottimo leader. Ma gli altri sviluppatori non erano così importanti. Quello che è successo? ora quello sviluppatore lavora direttamente per noi, perché è una persona molto simpatica e diventa anche mio amico. C'è una relazione forte e anche noi gli paghiamo quasi uno stipendio italiano. Perché? Perché la relazione conta. Ho visto molte persone andare in India solo per salvare.

Si ottiene quello che si paga. Quindi ovviamente puoi risparmiare un po 'di denaro, ma penso che (specialmente per i piccoli progetti) fare outsourcing solo per risparmiare denaro sia una scelta sbagliata.

18
user193655

Non posso parlare per gli altri. Questa è la mia opinione, con la quale le persone non sembrano essere in disaccordo. Vorrei iniziare con alcuni dei fatti quando li vedo.

Innanzitutto, ci sono prove del fatto che la maggior parte delle persone non è davvero tagliata per lo sviluppo del software. (Ad esempio, la ricerca sull'interfaccia utente indica che oltre la metà della popolazione probabilmente non riuscirà mai a "prendere" l'idea di un albero di directory.) In Occidente, quelle persone non hanno problemi a trovare altri lavori dignitosi per i quali sono più adatti. In India, al contrario, c'è così tanta pressione per lo sviluppo del software che lo fanno comunque. Ciò significa che ci sono molte persone in India che si dedicano allo sviluppo di software che non dovrebbero davvero.

Successivamente, l'India è una destinazione comune per l'outsourcing. Le aziende lo fanno perché sembra a buon mercato (i salari sono bassi). Tuttavia, è ben documentato (ad esempio vedere i fattori di costo documentati nel modello COCOMO II ) che tutti i seguenti aumentano i tempi e gli sforzi di sviluppo richiesti: lavoratori in più sedi, lavoratori in più fusi orari e lavoratori provenienti da più culture. Qualsiasi progetto realizzato in India e diretto dall'ovest avrà tutti e tre i fattori di costo. (Questo è prima di aggiungere la tendenza a trovare persone che lavorano come sviluppatori che in realtà non dovrebbero esserlo.)

Infine, la più grande sfida assoluta nella gestione dei progetti software è ottenere informazioni accurate su ciò che non funziona per i decisori che devono conoscerlo. Mi piace questo presa umoristica su quella tendenza. Per qualsiasi combinazione di ragioni, che si tratti di disperazione, cultura o convinzione che il cliente abbia ragione, questa tendenza è peggiore nei progetti che sono stati esternalizzati in India. A volte in modo comico.

Il risultato è che c'è una forte tendenza per le compagnie americane a soccombere al canto delle sirene di salari bassi, esternalizzare il lavoro in India, e quindi i progetti in outsourcing si trasformano in disastri. (Ma l'entità del disastro non è evidente fino a dopo che gli americani hanno perso il lavoro.)

L'altro modo in cui le compagnie vanno è di assumere gli indiani negli Stati Uniti con visti H1B. Questo elimina i problemi dei lavoratori remoti. Molti indiani vogliono questi lavori perché gli stipendi sono più alti negli Stati Uniti, ecc. E ci sono più che abbastanza indiani veramente eccellenti là fuori per riempire tutti i lavori disponibili. Ma c'è un problema. Le compagnie americane che assumono visti H1B sono tenute a giurare che non c'erano americani disponibili per il lavoro, che alla persona assunta vengono pagati i tassi di mercato, ecc. Ma qualcuno con un visto H1B fa fatica a cambiare lavoro. Questo dà al datore di lavoro un lavoratore in cattività. E non lascia alcun incentivo di mercato a trattare effettivamente tali dipendenti in modo equo. Ciò offre alle aziende forti incentivi alla disonestà. Troppi soccombono. L'unica cosa che limita il tasso di abuso di questo programma è che ci sono limiti a quanti visti H1B vengono concessi ogni anno.

Come americano non ho problemi con la migliore e la più brillante venuta negli Stati Uniti. Al contrario, questo è ciò che ha costruito questo paese. Ma trattali allo stesso modo una volta arrivati. Ad esempio, conosco una persona delle Filippine che, a causa del suo status di visto, ha dovuto rifiutare le offerte di lavoro di Google, Apple e Facebook. Per circa il doppio di quello che sta attualmente facendo. Se al mercato fosse permesso di stabilire gli stipendi di persone come lui, ci sarebbero molti meno incentivi per le aziende a provare ad abusare del programma H1B.

Quindi c'è la mia opinione. Per una serie di motivi, l'outsourcing di progetti in India porta spesso a un disastro. Quelli che ottieni come lavoratori H1B tendono ad essere eccellenti, ma quel programma è pesantemente maltrattato in modi che mi rendono triste.

18
btilly

IMO il problema non è est contro ovest, ma l'idea generale di esternalizzazione. Nella seconda metà degli anni '90, il boom di Internet, Y2K e la conversione di valuta in Euro hanno creato molto lavoro per i programmatori, quindi l'outsourcing era un argomento caldo allora. Ma era in outsourcing all'interno del paese, non in Oriente. Tuttavia, molti dei problemi che ci aspettiamo o sperimentiamo con l'offshoring si verificano anche con i partner di outsourcing locali.

In molti casi, scrivere una buona specifica riguarda tanto lavoro quanto farlo da soli (anche se domande e risposte). Ma poiché l'obiettivo dell'outsourcing è risparmiare tempo e/o denaro, le specifiche fornite al partner di outsourcing sono imprecise. Aggiungi un appaltatore pagato ogni ora e una mancanza di supervisione ed è chiaro cosa devi aspettarti.

12
user281377

Vivo in Cina da poco più di due anni (sono canadese) e lavoro con sviluppatori cinesi e, stranamente, lavorando con sviluppatori canadesi all'estero. Posso dire che alcune delle generalizzazioni fatte, almeno in cinese, dagli sviluppatori sono piuttosto vere, cioè la maggior parte degli sviluppatori con cui ho incontrato/lavorato qui sono:

  • Mancanza di curiosità e creatività. Qui non penso che siano inferiori o stupidi. Ma piuttosto che è culturale. Storicamente si pensa che rispettino prima di tutto l'autorità. In quanto tali, non metteranno mai in discussione un cattivo design consegnato loro "dall'alto". Inoltre, molti di loro sono per lo più interessati alle competenze tecniche piuttosto che alle competenze di dominio. Ho più difficoltà a insegnare loro su schemi e concetti astratti a meno che non possano collegarsi direttamente al loro lavoro a portata di mano. Tuttavia, dopo un po ', i muri si sbriciolano, diventano più avventurosi in un'autorità sfidante, per non dire a livello tecnico, non vorrei revocare il visto ;-)
  • na minaccia Questo è stato menzionato prima, ma sottolineo. Questo è probabilmente il singolo punto più importante e ciò che crea il maggior numero di tensioni nei rapporti con le università all'estero (ovvero in Canada). In generale, gli occidentali con cui lavoro tenderanno a esagerare tutti gli aspetti negativi del lavoro con gli orientali. Saranno estremamente severi nelle revisioni del codice pur essendo molto indulgenti l'uno con l'altro. Daranno calci e grideranno se una sola supervisione del processo o delle buone pratiche viene trascurata da un orientale, ma se stessi chiederanno cortesemente di seguire educatamente le procedure da loro stesse messe in atto.
  • Expendable va bene per un cinese lavorare con attrezzature usate di seconda mano. Ho rotto tre sedie prima che mi fosse permesso di prenderne una semi-comoda. Poi mi sono sentito male nel farmi notare dalla sedia che tutti avevano ancora quello che sembrava un apparecchio di tortura medievale su cui sedersi. Tuttavia, visitando la sede centrale della stessa compagnia, gli sviluppatori lì avevano scrivanie che occupavano l'area del pavimento tipicamente occupata da una squadra di 4-6 sviluppatori qui in Cina, per non parlare delle sedie!

All'inizio ciò che scrivevano non era sempre molto buono. C'è sicuramente il divario culturale, ma anche la lunga e ripida curva di apprendimento di un sistema mal progettato per cominciare. Ma sai cosa ... dopo due anni ... alcuni dei migliori lavori fatti su questo sistema provengono dagli uffici cinesi. Man mano che questo diventa sempre più visibile, questo aggrava ancora di più l'elemento di minaccia ...

Francamente non è facile ma penso di essere sul lato destro della barriera quando guardo la tendenza per esperienza personale.

11
Newtopian

Questo è un argomento affascinante. Ho lavorato a San Francisco e nella Silicon Valley, ma anche in Europa per clienti locali, ho creato un ufficio offshore in India e ora gestisco un negozio di sviluppo offshore in Sud America. Ho anche lavorato un po 'con gli sviluppatori africani.

Ogni regione del mondo è in grado di produrre grandi programmatori. Ho un amico hacker in Malawi che ha creato un'interfaccia touch sorprendente Rails ha supportato i sistemi open source per le cliniche HIV, usando e contribuendo a progetti open source in modi importanti.

Ho anche visto programmatori americani lavorare alle start-up di marchi famosi e alle principali società web che non potevano programmare l'uscita da un sacchetto di carta. Le persone con master in Comp Sci da MIT e anni di esperienza nel settore, che quando si trattava di scrivere un buon codice di produzione, non potevano tagliarlo.

Esistono differenze culturali molto reali tra Europa, America Latina, Stati Uniti e India. Poi c'è la cultura degli hacker, che è più o meno universale.

Alla comunità tecnologica indiana tradizionale piace mettere le persone al problema. La tariffa oraria per sviluppatore potrebbe essere inferiore, ma se il fornitore crede nella quantità piuttosto che nella qualità, avrai bisogno del doppio di sviluppatori per far funzionare il codice.

Certificazioni. Che diavolo? L'India ama le certificazioni, ISO, CMMI, ecc ... continua all'infinito. È insignificante che copre il culo. Più precisamente, non è come sviluppare un buon software.

Il sistema delle caste. Il sistema delle caste è illegale in India e dall'indipendenza c'è stato un enorme lavoro per eliminarlo, ma è ancora una bestia che respira vivente. La maggior parte degli occidentali ignora l'esistenza del sistema delle caste. Sono cresciuto negli Stati Uniti, ma mio padre è nato in India, come viene chiamato anglo-indiano, e mia madre andò all'università lì come studente, e poi tornò a insegnare molto più tardi nelle università indiane. Il sistema delle caste è molto reale, viene dall'India ed è vecchio, ma gli inglesi lo incoraggiarono e lo usarono per mantenere il potere. Gli occidentali devono sapere che prenderanno il posto degli inglesi, ai vertici della gerarchia. Sarai chiamato signore, non sarai interrogato. La maggior parte dei manager indiani vede il proprio ruolo nel dire ai propri figli cosa fare. Parlare e offrire alternative è punito.

Non tutti i negozi di sviluppo indiani sono così, Zoho, ha costruito un'incredibile impresa indiana infrangendo tutte le regole. Assumono in base all'abilità e non alla casta o alla certificazione universitaria che hai. In questo modo, hanno eseguito il bootstrap di una sostituzione completa SaaS alla suite MS Office.

Esiste una vivace comunità di hacker in India con incontri, mailing list, piccole conferenze e simili. Questi sviluppatori sono bravi a livello mondiale. Spesso trovano difficile trovare lavoro nel settore dello sviluppo del software indiano tradizionale. Io stesso ho trovato due python dev's per il nostro ufficio indiano, erano fantastici, e poi il nostro manager indiano ha insistito per assumere una dozzina di matricole, neolaureati per riempire la squadra. Dopo alcuni mesi gli hacker Esci, il loro manager aveva reso la loro vita un inferno. Ci restarono una dozzina di impiegati giovani ed entusiasti, molti dei quali non sapevano programmare molto bene.

La migliore delle matricole era una giovane donna che aveva costruito un IDE per gli sviluppatori su sistemi embedded. Nessuno voleva assumerla perché proveniva da una famiglia conservatrice e gli indiani pensavano che sarebbe stata costretta di lasciare il lavoro una volta sposata.

Ci sono grandi sviluppatori in India, ma la struttura del valore è impostata per estrometterli e per promuovere le persone in base a cose che non hanno nulla a che fare con la creazione di un ottimo codice.

L'altro grosso problema sono i fusi orari. Non è un vantaggio, è un grosso problema. Significa che non esiste una comunicazione diretta costante tra i team in loco e quelli offshore. Ciò provoca enormi equivoci e ti costringe a scrivere risme di documentazione. Rende l'agile molto difficile da realizzare.

La triste verità è che un'enorme quantità di software prodotto da società indiane è di bassa qualità. Senti che gli sviluppatori parlano continuamente di come gli ingegneri indiani facciano schifo, non è vero, ma è un riflesso della qualità delle grandi società offshore tradizionali. È colpa della cultura imprenditoriale in India, non degli stessi sviluppatori. Gli sviluppatori sono bloccati in un cattivo sistema che premia le cose sbagliate.

9
rabble

Schietto e cinico:

  • Più economico
  • Una minaccia
  • Mancanza di apprezzamento per il fatto che si scambiano scimmie di codice locale con project manager e analisti più costosi per mantenere i contatti con i team offshore
  • Le parti interessate otterranno ciò che hanno richiesto a causa della loro incapacità di soddisfare un requisito conciso e globale. Questo non sarà quello che volevano. Le parti interessate vogliono la conoscenza locale ...
  • ... ma è un segno di spunta per senior IT gestione perché è trendy/popolare/KcKinsey ha detto/non capisco gli sviluppatori/...
8
gbn

Ho sperimentato diversi progetti offshore in Asia (diversi paesi che non menzionerò). TUTTI erano fallimenti tristi. Nonostante la documentazione abbondante e dettagliata, i documenti relativi alle specifiche, ecc. Inviati sul risultato (se qualcosa è stato prodotto) era uniformemente scadente. Di solito o non funzionava affatto o era così marginalmente funzionale da essere inutile. I progetti erano anche (se producevano risultati) seriamente in ritardo.

OTOH Ho lavorato con programmatori asiatici e altri che lavorano in Europa e negli Stati Uniti e la maggior parte di loro sono persone buone e laboriose che conoscono bene il loro lavoro.

Forse una dichiarazione di molti di loro che tutte le brave persone IT lasciano l'Asia per lavorare in Europa e in America dicono tutto. Ciò che rimane è il fondo della pila, con persone di qualità scarsa o assente che forniscono supervisione, formazione e leadership di squadra per migliorare. Avendo avuto a che fare con persone IT asiatiche che vivono lì (almeno da alcuni paesi) per telefono ed e-mail (e vedendo interviste in televisione, ecc.), Potrebbe anche essere coinvolta la cultura. Molti sembrano considerarsi razzialmente e moralmente superiori agli americani e agli europei (e considerano quelli che lasciano traditori i loro paesi) e rifiutano di ascoltare i consigli da chi considerano esseri inferiori. Questo non è certamente vero per tutti i paesi asiatici, ma può essere abbastanza diffuso da creare un'atmosfera di "sappiamo meglio, tutti i problemi sono causati dal cliente" nelle società offshoring laggiù. Naturalmente, anche le aziende che appaiono e scompaiono rapidamente, rinominandosi e ricominciando dopo che il loro nome è stato offuscato da una performance scadente, ha anche un ruolo.

La situazione nell'Europa orientale è migliore, forse in parte perché molti di questi paesi fanno parte dell'UE, quindi c'è una maggiore minaccia di azioni legali di successo contro di loro se si rovinano.

8
jwenting

Durante i miei 10 anni in IBM ho lavorato con programmatori di tutto il mondo in una varietà di relazioni. La prima cosa che impari è che gli stereotipi geografici sono tutti sbagliati, su entrambi i lati dell'oceano. I programmatori sono programmatori di tutto il mondo ... scegline 100 da qualsiasi luogo e otterrai circa lo stesso rapporto tra persone che non potevano programmare ciao mondo senza un viaggio o tre su Google, persone decentemente competenti e persone brillanti.

Detto questo, le generalizzazioni geografiche del clima aziendale in alcune di queste aree sono accurate. L'India, ad esempio, è molto simile ad Austin, TX o alla Silly Con Valley alla fine degli anni '90 e all'inizio degli anni 2000 ... un sacco di posti di lavoro che saltano e girano porte, gente che va e viene ogni anno o giù di lì. D'altra parte, la Cina sembra essere molto più simile alla Silicon Prairie qui nel Midwest degli Stati Uniti, la gente sceglie un'azienda e rimane lì per un lungo periodo di tempo. Il Brasile, la Russia e l'Europa sembravano essere da qualche parte nel mezzo, non tanto da rimanere un periodo di tempo medio, ma sembrano avere un mix delle due cose, alcune persone in cerca di lavoro, altre persone che si insediano.

7
cabbey

Appartengo al mondo orientale e ho anche esperienza di lavoro in outsourcing dalla mia società al mondo orientale :-) La mia azienda non voleva investire le proprie risorse per svolgere il lavoro, nonostante tutto l'aiuto che potevamo offrire l'outsourcer il progetto non è riuscito. È stato frustrante lavorare con alcuni di questi ingegneri, penso che i modelli di outsourcing e le competenze tecniche possano maturare di più in Oriente per il miglioramento. Detto questo, ho lavorato con molte persone nel mondo occidentale che possono anche migliorare. Trovi programmatori buoni e cattivi in ​​tutto il mondo.

5
Geek

Disclaimer: sono indiano e questo può sembrare un punto di vista indiano, ma ho lavorato con molti clienti occidentali e persino negli Stati Uniti. Se l'emisfero orientale avesse i peggiori programmatori al mondo, perché l'emisfero occidentale dovrebbe esternalizzare verso est? Se esternalizzi nelle parti orientali del globo solo per risparmiare soldi, IMO, compromettendo la qualità. Buono, veloce ed economico, scegli due qualsiasi. Quando devo assumere un ragazzo, chiedo alla mia organizzazione quali sono le loro aspettative e quali sono i prezzi che sono pronti a pagare. È davvero difficile per uno convincere un talentuoso ragazzo stimato di sé a lavorare per te per una retribuzione minore e una maggiore pressione. Sono solo quei siti freelance combinati con sfortunati ragazzi occidentali i cui lavori erano Bangalore-d che hanno portato i programmatori orientali a essere scimmie in codice. Se sei pronto a pagare un prezzo migliore, avrai la certezza di un risultato migliore e non seguirai quel tipo di società di servizi ISO/CMMI/SEI. Assumono talenti come se allevano un gregge di pecore o animali vivi.

4
Kumar

Sono un americano che attualmente vive all'estero (in Russia) e lavoro come imprenditore (e libero professionista per pagare le bollette). Ho lavorato nella Silicon Valley come sviluppatore, capo di un team tecnico e architetto di software/sistemi per oltre 20 anni per numerose aziende e startup, alcune molto conosciute, tra cui una startup che alla fine è diventata un importante multimiliardario dominante nel settore società internazionale. Quest'ultima società (chiamandola "X") ha centri di sviluppo in tutti gli Stati Uniti e nel mondo: India, Russia, Cina, Europa, ecc. Ho lavorato direttamente con i membri di alcuni di questi team e li ho trovati di grande talento e degni ingegneri. Assertività e creatività Sono d'accordo sul fatto di essere un tipo di personalità di ingegnere più americano al momento, ma che non durerà a lungo credo che il freelance e l'outsourcing maturano.

  • L'outsourcing riguarda chiaramente i soldi. Quando ho lasciato gli Stati Uniti, X non stava assumendo negli Stati Uniti, ma stava assumendo in uffici internazionali. X paga agli ingegneri non statunitensi circa 1/4 a 1/3 (dipende dalla regione) dello stipendio di un equivalente (anni di esperienza, abilità) ingegnere statunitense. Che è ancora uno stipendio abbastanza buono di solito considerando le economie di alcune località non statunitensi, ma questo non è buono per il tasso di paga l'esistenza stessa delle posizioni ingegneristiche statunitensi.

  • Credo che il freelance sia il futuro del lavoro al computer, in particolare del software. Per sua stessa natura è altamente portatile, tutto ciò che serve è un laptop e una connessione Internet e sei in affari. C'è sempre un caso da fare per i team interni in loco: pianificazione più affidabile, set di abilità prevedibili, ecc., Ma sono molto molto costosi da mantenere .

  • Vedo post piuttosto frequenti e arroganti da parte degli ingegneri statunitensi su quanto siano terribili tutti gli sviluppatori non statunitensi (date un'occhiata, ad esempio, a questa discussione: https://stackoverflow.com/questions/209170/how- tanto fa-da-cost-to-sviluppo-un-iphone-applicazione ). Lo stereotipo è che sì, sono economici ma sempre anche non qualificati e scrivono codice scadente. Che l'unico modo per ottenere la qualità è di pagare i tassi di paga statunitensi agli ingegneri statunitensi. Sciocchezze! Gli ingegneri statunitensi devono svegliarsi: l'industria e l'economia si stanno spostando da sviluppatori interni molto pagati a team di sviluppo distribuiti sparsi in tutto il mondo. Sicuramente ci sono cattivi sviluppatori non statunitensi - ma ripensaci a tutti quegli intervistati statunitensi che hai trasmesso perché non si sono misurati. Alcuni dei codici assolutamente più atroci che io abbia mai visto o lavorato sono stati scritti da un ingegnere interno americano, che ha rifiutato di cambiare o migliorare! Solo perché alcuni sviluppatori casuali di elance hanno fatto un lavoro schifoso non significa che tutti gli ingegneri non statunitensi siano terribili. Invece, quel client elance dovrebbe guardare un po 'oltre gli offerenti in basso, ci sono vere gemme là fuori, anche i migliori sviluppatori, disponibili con un grande sconto per le tariffe interne negli Stati Uniti. In questo particolare istante nel tempo, ti garantirò, un sacco di talento è concentrato negli Stati Uniti - ma chiunque pensi che questo non cambierà mai è molto seriamente illuso.

  • Talento ed esperienza costano più della mancanza di ciò, te lo garantirò. Ma il fatto è che la scala di retribuzione dei dipendenti interni degli Stati Uniti è molto diversa da quella del resto del mondo. C'è un continuum dinamico di talenti/costi costantemente in movimento e il talento ambientale di base degli ingegneri non statunitensi aumenterà, il che eserciterà una forte pressione al ribasso su entrambi i tassi di pagamento statunitensi e l'esistenza stessa di ha pagato posizioni di ingegneria interna negli Stati Uniti (ricorda: X sta assumendo a livello internazionale, ma non negli Stati Uniti. La scritta è sul muro). Quindi, più talentuosi saranno sempre in grado di caricare più dei meno talentuosi, ma puoi essere sicuro che non sarà alle attuali tariffe statunitensi.

  • La concentrazione di talenti in tutto il mondo cambierà assolutamente, così come la posizione fisica dei team di sviluppo è già cambiata . I livelli di talenti non statunitensi continueranno a salire, e in un futuro non troppo lontano guarderemo indietro a questi thread e penseremo "di cosa stavano parlando, puoi trovare i migliori talenti in qualsiasi parte del mondo".

4
Bogatyr

Ho lavorato sia nella parte orientale che occidentale del globo e ho pensato che avrei condiviso. Avevo lavorato a Bangalore per 5 anni prima di trasferirmi negli Stati Uniti. Ha lavorato negli Stati Uniti per circa 8 anni e è tornato in India. Sono stato costretto a sedermi a casa perché i lavori qui sono troppo impegnativi. Con 2 bambini piccoli era impossibile dedicarsi a quelle lunghe ore. Finalmente ho trovato un lavoro part-time. Sono rimasto scioccato nel vedere la qualità del lavoro in India. Non è stato così male quando eravamo partiti negli Stati Uniti. Il giovane pubblico non sembra avere alcuna responsabilità o l'entusiasmo di apprendere nuove tecnologie. Come qualcuno ha sottolineato, dire 'no' è raro (un duro colpo per il loro ego, IMO) e di conseguenza vedrai un lavoro totalmente inutile o mediocre. Il codice è non leggibile, nessuna idea del quadro generale, nessuna possibilità di espansione, ecc. Quando si allena un ragazzo (i) è pronto a saltare i lavori per un pascolo più verde. Detto questo, vorrei ancora dire che ce ne sono alcuni eccezionalmente buoni. Se ti capita di lavorare con lui/lei, considerati fortunato, specialmente se quella persona può comunicare bene!

4
user18244

Vivo in Europa centrale. L'ondata di outsourcing ci ha investito negli ultimi anni. Ho lavorato su progetti in outsourcing da "l'Occidente", ma oggigiorno i progetti in outsourcing arrivano in paesi più economici. Quindi sono stato su entrambi i lati dell'equazione.

Quando eravamo in outsourcing i nostri manager e i ragazzi con cui lavoravamo quotidianamente erano simpatici, ci trattavano come uno sviluppatore interno. Una leggera preoccupazione per la sicurezza del lavoro potrebbe essere avvertita dal resto della gente, ciò che ho considerato perfettamente normale. Inoltre, abbiamo ottenuto compiti di seconda categoria in un progetto più ampio, il che va bene anche per me, non dovresti esternalizzare le tue competenze primarie.

Quindi i progetti si sono spostati in territori più economici, il che era inevitabile.

La linea di fondo dell'intera storia dell'outsourcing è che la direzione non dà il culo a un topo sulla tua conoscenza, esperienza, istruzione o know-how. A loro importa solo i costi e il loro bonus. Quindi, a meno che non ci sia un motivo per cui è necessaria la tua presenza locale, i progetti software verranno esternalizzati in paesi sempre più economici.

4
Karl

Vivo in Russia, in Siberia e lavoro per un'azienda medica tedesca che ci affida progetti esterni. Immagino che sia un po 'più che esternalizzazione: abbiamo team condivisi tra Russia e Germania, abbiamo viaggi di lavoro tra di noi, ecc.

Ovviamente sono soggettivo, ma credo che siamo un esempio di outsourcing di successo: la qualità del codice e la qualità del prodotto stanno aumentando in modo significativo da quando abbiamo iniziato a lavorarci.

È un po 'deludente essere una forza lavoro a basso costo, ma dall'altra parte abbiamo la possibilità di lavorare per una grande azienda con una grande esperienza tecnologica e gestionale.

4
SiberianGuy

Vengo dalla Svizzera. Ho lavorato a un progetto in cui abbiamo esternalizzato in Ucraina. Gli sviluppatori erano molto più economici, ma i soldi risparmiati dovevano essere reinvestiti nel far volare il nostro team in Ucraina ogni due mesi per supervisionare questo team nearshore. Il progetto è morto circa un anno dopo essere stato esternalizzato.

Ora sto lavorando a un progetto che è esternalizzato a una società svizzera, che lo ha quasi avvicinato al Marocco. Il progetto è ben avviato, ma abbiamo problemi di comunicazione e problemi di qualità.

Penso che il problema principale sia che progettiamo in mare aperto per renderli più economici. È sempre difficile rendere le cose più economiche ma della stessa qualità ...

3
Guillaume

Ho lavorato con grandi programmatori offshore, ma non erano scandalosamente economici da assumere. Ho anche lavorato con programmatori offshore molto economici e non erano fantastici.

Mi è sempre sembrato che i grandi programmatori dell'est trovassero probabilmente un modo per essere pagati tanto o quasi quanto i grandi programmatori dell'ovest; forse lanciano la loro compagnia, forse ottengono un visto, qualunque cosa possano. Ma tenderebbero a trovare un modo, giusto?

Quando cerco un team di programmatori disposti a lavorare in modo estremamente economico, non mi aspetto di ottenere talenti di alto livello. Vero, non importa dove abita il tuo talento.

3
Havoc P

Se la qualità del lavoro è scadente, forse non è così tanto che guardano all'India, ma guardano a chiunque faccia la migliore offerta, e probabilmente non sarà il tipo di Prasoon Saurav ma una squadra di codifica junior.

3
CashCow

Alcune delle più grandi società IT del mondo si trovano in India, se hai sentito parlare di Wipro, Infosys, TCS ecc. Le più grandi aziende indiane, che la maggior parte dei "professionisti del software occidentali" non potrebbero mai permettersi di offshore, si qualificherebbero facilmente come la migliore qualità al mondo . Ottenono ogni certificato sotto il sole per quanto riguarda la qualità solo per placare le paure dei clienti occidentali. Inoltre ci sono più ingegneri (laurea ed esperienza) nella maggior parte delle società di software indiane rispetto alla maggior parte delle aziende occidentali. Anche Google, Oracle, IBM, Microsoft, SAP hanno tutti centri di sviluppo e non tutti sono lì alla ricerca di programmatori economici.

Quindi, come possiamo vedere gli ingegneri occidentali. Vediamo un miscuglio come te vedi un miscuglio quando guardi oltre l'oceano. Ci sono persone super tecniche qualificate che ammiriamo e ci sono douche bag con cui potremmo essere costretti a lavorare a volte. In generale andiamo molto d'accordo in squadre miste. La relazione fa davvero schifo se ci sono uomini d'affari "tecnicamente orientati" nella parte occidentale e solo programmatori dall'altra parte. Di solito si tratta di una società occidentale affamata di soldi che cerca di risparmiare qualche soldo non assumendo un manager locale.

2
user18189

@giddy, Peter: Come programmatore proveniente dall'India, dovrò ammettere la verità, per quanto sia triste, delle tue dichiarazioni: la programmazione in India non è qualcosa che la gente prende per scelta, ma per compulsioni, essere sono sociali o economici. Questo è uno dei motivi per cui è molto comune in India trovare persone che si spostano rapidamente dai lavori tecnici a quelli puramente manageriali (in realtà si chiama "salire la scala", una frase che ho imparato a detestare). Anche se vuoi continui a crescere come tecnico, i ruoli manageriali ti vengono assaliti (questo è uno dei motivi per cui ho deciso di trasferirmi dall'India, in realtà).

Per ragioni che vanno oltre me, la crescita della carriera è equiparata al numero di persone che lavorano o, per essere più precisi, sotto di te. "Sono responsabile di una squadra di x" o "x persone che lavorano sotto di me" è un'affermazione che è considerata degna di una persona di "successo" in India (non importa che le "x persone" possano essere quelle che producono quel tipo di codice a cui è stato fatto riferimento da altri in questo thread).

Detto questo, mi piace sottolineare che la scarsa qualità del codice non è qualcosa che si limita all'India o ad altri paesi "a basso costo". A volte vedo atteggiamenti familiari e qualità del codice anche qui in Europa. Per fortuna, però, non sono la regola generale.

2
JamieJag

Disclaimer: non ho alcuna esperienza diretta con l'outsourcing di me stesso. Di seguito, presento alcuni punti emersi quando ho discusso l'argomento con un project manager in una grande società di software occidentale. Questo ragazzo ha trascorso molto tempo a terra in India, supervisionando le squadre in outsourcing.

  • Quasi nessuno ha un computer in casa (troppo costoso).
  • L'istruzione informatica in India è carente. Le lauree in CS sono concesse a studenti che non hanno mai toccato un computer (di nuovo, è troppo costoso per consentire agli studenti di livello inferiore di accedere ai computer). I compiti di programmazione sono scritti su carta.
  • La mentalità "dire sempre di sì" è molto dannosa
  • Ai programmatori indiani deve essere detto esattamente cosa fare. C'è poca iniziativa.
  • Lo sviluppo di software in outsourcing in India è stato un disastro
  • L'outsourcing di alcune attività di controllo qualità ha funzionato correttamente.
  • Misc.:
    • L'elettricità è molto irregolare
    • L'India è più o meno uno stato di polizia
    • L'India sembra politicamente instabile e ha un problema di terrorismo.
    • Data un'opzione, nessuno sceglierà di vivere in India.
2
user18213

La mia esperienza con l'outsourcing nei paesi orientali (non nell'Europa orientale) è stata piuttosto negativa. Tutte le applicazioni che ho visto sono state orrende e sembrano solo un brutto codice non correlato incollato insieme per fare a malapena il lavoro che dovrebbe fare.

Non penso che ciò sia dovuto al fatto che i nuovi programmatori orientali sono peggiori dei nuovi programmatori occidentali, penso che sia dovuto al fatto che i programmatori orientali non hanno programmatori esperti per guidarli. Nel mondo occidentale, lavorare con i moderni linguaggi di programmazione è stata una professione comune per ~ 45 anni, quindi ci sono molti programmatori esperti con cui ne lavoreranno di nuovi con i quali puoi imparare. In oriente la programmazione moderna sta accadendo per cosa? 10-15 anni? C'è una vera mancanza di esperienza da cui le persone possono imparare. Inoltre, penso (il modo in cui lo vedo da qui) è che con la maggior parte dei programmatori dell'est che lavorano in outsourcing, raccolgono molti tratti negativi in ​​cui l'obiettivo è solo quello di ottenere il progetto fatto rapidamente tagliando gli angoli, che è un'esperienza che non dovresti trasmettere a nuovi sviluppatori. Almeno negli Stati Uniti, la maggior parte dei lavori di programmazione è stata affidata a persone che lavorano su un insieme limitato di prodotti che devono supportare nel tempo. Quindi le persone hanno raccolto tecniche per garantire che il software sia stabile e sicuro ... questa è una buona esperienza da trasmettere alla nuova generazione.

Quindi sì, fondamentalmente non vedo che abbia a che fare con la quantità di scolarizzazione che una persona ottiene ovunque, ha a che fare con le abitudini acquisite sul posto di lavoro. Ci sono molti buoni programmatori là fuori (anche se penso che stiano bene in minoranza) ma non penso che siano quelli con cui noi occidentali interagiremo quando i progetti saranno esternalizzati.

Per quanto riguarda gli europei dell'est, hanno gli sviluppatori esperti là fuori. Temo solo che possano essere eliminati gradualmente per soddisfare le esigenze di esternalizzazione.

2
user18458

Interessante! Sono cinese e penso di sapere perché i programmatori qui mancano di curiosità e creatività. La maggior parte dei miei colleghi si lamenta ogni giorno, odiano scrivere codice, non amano progettare, spettegolano qua e là (fa parte della nostra cultura). Vengono dalle società di software solo per una paga più alta (nei paesi in via di sviluppo, i ragazzi IT sono ben pagati), non per "salvare il mondo" o fare la differenza. Nessun interesse, nessuna motivazione, nessuna curiosità e nessuna creatività !!!! Ma ci sono teste intelligenti (come me ^ _ ^), fanno lavori di qualità e consegnano in tempo !!!!

2
user19025

Ho avuto esperienze contrastanti con il offshoring del nostro lavoro e solo lavorando con società offshore in generale. Per riferimento, vivo negli Stati Uniti.


Il cattivo

Ho lavorato presso una società che aveva contratto una società in India, che era stata valutata CMMI 5 e lavorava a basso costo. La società diede loro alcuni software client da scrivere da zero e, quando tornò, il codice era difettoso, completamente privo di documenti e generalmente difficile da refactoring e manutenzione. La società ha finito per scrivere l'intero cliente da zero e ha mangiato il costo dell'offshoring.

In un altro caso, una società con cui ho lavorato ha collaborato con una società in Asia per introdurre i loro servizi e prodotti nei mercati orientali. Ciò che accadde fu una storia segreta che solo poche persone conoscevano (e io stesso per procura) in cui la società asiatica prendeva il nostro codice sorgente e il design dei prodotti, interrompeva la partnership e quindi rilasciava i propri prodotti che erano gli stessi della mia azienda.


Il medio-ish

In un altro caso, una società in cui ho lavorato ha aperto un ufficio di ricerca in Cina, un posto molto moderno, avevano cose più fantasiose nel loro ufficio rispetto a me nel mio. Sono stato inviato all'ufficio cinese per una settimana per la formazione, poiché la struttura di ricerca e sviluppo sarebbe stata utilizzata per lo sviluppo di Linux personalizzato. Il team aveva alcune persone che erano abbastanza brave, ma come nel caso degli sviluppatori di quella statura, se ne sono andati abbastanza presto dopo, e il team rimanente ha scritto un'API da usare qui negli Stati Uniti. Chiamerò l'API completamente cattiva perché non ha mostrato alcuna comprensione di Linux, e il codice sorgente sottostante era alquanto traballante. Ma penso che il grosso problema che c'era nell'azienda abbia scelto uno strano team per dare lavoro anche a Linux, dato che nessuno in quel team era per niente un esperto di Linux, e quel progetto è stato demolito un anno dopo. In realtà mi è piaciuto lavorare con le persone di quel team, ma il loro management e il mio team hanno discusso molto sulla debacle di Linux.


Il bene

In altri casi, un'altra società con cui lavoravo a contratto presso una società dell'Europa orientale. Quei ragazzi erano davvero bravi, erano contratti per fare test di vulnerabilità e mentre erano in realtà piuttosto costosi, erano generalmente visti come un investimento degno.

Ho anche lavorato con una società di servizi IT indiana piuttosto gigantesca e disponevamo di sviluppatori interni che erano stati assunti da loro ma contratti con noi. C'erano molti buoni sviluppatori lì, ma questa è una storia più generale dato che tutti abbiamo lavorato insieme su vari progetti.


Queste storie sono per divertimento - ho lavorato con più aziende e ho storie su domestici e compagnie straniere.

Per alcune aziende la comunicazione è sempre stata la parte difficile. Lavoro all'ora orientale e parleremo con le persone 10 - 13 ore prima di noi. Andavamo anche solo attraverso la gestione, non parlando con gli sviluppatori reali, quindi lì c'era una disconnessione.

Ci sono stati anche degli sviluppatori che ho incontrato che non si sono proprio goduti il ​​lavoro. Avevamo un coreano dev, che voleva venire negli Stati Uniti per lavorare perché lavorava ore difficili per una paga bassa per una compagnia di difesa in Corea. Ero un collega con un dev (anche straniero) che lamentava le sue scelte nel diventare uno sviluppatore - lo ha fatto per cercare di guadagnare milioni.

2
wkl

Molto francamente, e in generale, non credo che i programmatori in "occidente" abbiano un'alta opinione dei programmatori in "est". Non sono sicuro che ciò sia giustificato o meno.

Come suggeriscono alcune risposte, l'outsourcing è una minaccia per molti in "occidente". Questo è un motivo automatico per non fidarsi dei programmatori "rivali".

Ho visto codici errati solo quando guardavo progetti in outsourcing, e solo un piccolo numero di volte. Ciò potrebbe essere dovuto al fatto che il lavoro è andato in un negozio economico ("ottieni quello per cui paghi"), perché il progetto è stato gestito male, o molto probabilmente perché se il progetto ha avuto successo non avrei bisogno di guardare il codice. In altre parole, si sente solo parlare del codice errato.

Ci sono anche storie dell'orrore - come il precedente file di 30000 righe. Ancora una volta, peggiore è la storia, più si diffonderà.

La gente dirà cose come 'Se vuoi che sia fatto a buon mercato, esternalizza. Se vuoi farlo nel modo giusto, fallo internamente. '

Se stai imparando e migliorando, non me ne preoccuperei troppo.

2
Kirk Broadhurst

L'outsourcing ha solo uno scopo: basso costo.

L'outsourcing è molto popolare in questo settore, anche in una grande azienda internazionale, usano anche l'outsourcing all'interno. Il dipartimento ovest può usare l'outsourcing al suo dipartimento est.

Penso che i principali vantaggi dell'ovest siano nell'area design e business. Nella maggior parte dei casi, i progetti del dipartimento ovest a livello di architetto forniscono anche alcune librerie o codici di base. E il dipartimento ovest conosce gli affari in profondità. Dopo la valutazione, la progettazione di base e l'analisi aziendale verranno trasferite al dipartimento est.

Nella mia esperienza personale, i dipartimenti occidentali sono più maturi nell'industria, mentre i dipartimenti orientali procedono più rapidamente.

Con lo sviluppo in oriente, l'outsourcing si sta spostando verso paesi a basso costo. Nel frattempo, l'outsourcing è relativamente a basso profitto, le società orientali svilupperanno le proprie capacità nel proprio design e business imparando dall'ovest durante la fase di outsourcing.

La mia esperienza: sono nata e istruita vicino a New York, e ho lavorato con ingegneri/sviluppatori in Cina e in India per oltre dieci anni, nonché con team in Europa. E molti dei miei collaboratori sono immigrati dalla Cina e dall'India.

In generale, osservo che i dipendenti in Cina e India hanno due scopi principali: centri a basso costo e accesso al mercato locale. In particolare, la Cina è uno dei nostri maggiori mercati e in cui si trovano i nostri maggiori clienti al di fuori degli Stati Uniti; è necessario un lavoro locale per gestire i clienti per personalizzare e testare.

Anche i miei datori di lavoro hanno attività di ricerca e sviluppo in India e Cina, ma questo è un po 'al di là dell'ambito di questa discussione.

In generale, "est" è più giovane e ha tassi molto più alti di turnover del personale. Stanno anche ottenendo aumenti salariali più alti da una base molto più bassa e ho visto il loro miglioramento del tenore di vita nel corso degli anni. Molti di loro ora possiedono veicoli a motore (uno scooter o un'auto) e hanno accesso a Internet a banda larga.

Parte del nostro addestramento sulla sensibilità culturale è stato il modo in cui le diverse culture affrontano conflitti, gerarchie e autorità, e in questo c'è un granello di verità. Soprattutto negli approcci all'autorità ...

1
user18096

Ho lavorato per un'azienda come Londra che aveva un contratto con un programma di assunzioni indiano, erano pagate bene, ma, circa i 2/3 di quello che guadagnava la maggior parte dei consulenti, da quello che mi è stato detto che dovevano impiegare un certo importo e il CFO lo considerava prezioso per il denaro. Tutti avevano un master ecc. Più della maggior parte degli appaltatori. Il risultato? Pasticcio assoluto! ASCII competizione artistica nelle intestazioni dei file c #, trascuratezza per le convenzioni di denominazione, enormi quantità di if annidati, era orribile, nessuna idea su OOP, non iniziare nemmeno su SOLID o TDD. Peggio ancora hanno continuato a sfornare questa merda.

Io e alcuni altri che eravamo orgogliosi del nostro lavoro, ci sedevamo lì maledicendolo per la frustrazione, erano stati avvicinati da alcuni altri ma non ce la facevano bene, alla fine la gestione aveva prurito ai piedi e ci ha messo da parte nel caso in cui fosse visto come razzismo (vai a capire).

Prima di fare un concerto in un sito web di comparazione dei prezzi, si sono affidati in outsourcing a Vashai a Mumbai, e sono andato a insegnare (buone due settimane). Di nuovo brava gente, ma tutti tranne uno valevano 1/3 dello stipendio per laurea che presumibilmente stavano guadagnando, di nuovo tutti con un master. Non riuscivano proprio a capirlo.

Solo la mia esperienza.

1
Mâtt Frëëman

Ci sono milioni di programmatori in India, quindi questa risposta deve essere una generalizzazione. Penso che la risposta sia cambiata radicalmente nel tempo. Torna indietro di un decennio fa (in particolare prima del busto di .com), e l'esperienza era che ti sarebbe stato difficile trovare sviluppatori di livello medio e migliore rispetto all'outsourcing in India. Erano intelligenti, abili, generalmente avevano forti capacità comunicative, ma soprattutto erano molto desiderosi per mostrare cosa potevano fare. Il talento senior era anche in India, ma proprio come in Occidente era difficile ottenerlo esternalizzando a meno che non si fosse contratto direttamente con lo sviluppatore.

Ora però, penso che il pendolo si sia spostato piuttosto lontano dall'altra parte. La domanda di programmatori esperti in India è così grande che il pool di talenti è stato ridicolmente ridotto. Non toccherei un'azienda di outsourcing indiana se non avessi una relazione forte con loro e sapessi che avrei potuto contare sulla qualità. Se vuoi buoni programmatori in India, non esternalizzare. Devi aprire un negozio in India e iniziare a selezionare e assumere persone. Puoi ancora trovare grandi talenti (in realtà ce ne sono molti di più che rimangono in India che in passato), ma per me l'idea che puoi ottenere quel talento con uno sconto significativo è una fantasia nostalgica. Si scopre che i buoni programmatori sono difficili da trovare ovunque e quindi possono addebitare un premio per i loro servizi ... ovunque. Ora guardo l'India come un posto dove trovare altro grandi talenti, piuttosto che un posto per ottenere qualsiasi tipo di affare.

1

In primo luogo, il programmatore occidentale tende solo ad ogni accordo con i programmatori indiani che hanno scritto codice come parte di un accordo di "outsourcing". Mi aspetto che i migliori programmatori indiani stiano scrivendo codice per le aziende indiane o siano impiegati direttamente da grandi aziende occidentali come Microsoft.

Penso che sarebbe lontano da dire, ogni volta che ho dovuto "riparare" tale codice. (Per qualche motivo, i programmatori di Weston dovrebbero risolvere il disordine qualche settimana prima che il progetto venga spedito. Forse se il codice non è un disastro, un programmatore di Weston non dovrà mai guardarlo =.)

  • I programmatori indiani non "hanno" avuto la visione di ciò che avrebbero dovuto fare.
  • Hanno visto cose come "Unit Testing" come elemento "tick box" e quindi hanno appena scritto abbastanza metodi di prova senza pensare a ciò che stavano testando.
  • I programmatori indiani affermavano di comprendere ciò che era necessario e di poterlo fare, indipendentemente dalla verità.
  • I programmatori indiani non hanno mai messo in dubbio way sono stati invitati ad implementare un determinato requisito e quindi non hanno mai messo in discussione le specifiche che un programmatore occidentale avrebbe messo in dubbio e corretto prima di scrivere "codice corretto per fare la cosa sbagliata".
  • hanno lavorato sodo e lunghe ore, ma non hanno prodotto un soluzione quel lavoro, solo qualcosa che forse ha continuato a leggere le specifiche.
  • Nel Regno Unito non è consentito dire che non puoi lavorare con un'India quando non sei in grado di capire cosa si dice nelle riunioni telefoniche ecc., Quindi non puoi dire a nessuno che il progetto sta andando storto. (I problemi di fuso orario in sé sono sufficienti per portare la maggior parte dei programmatori del Regno Unito ai recenti che devono lavorare su un progetto con i programmatori dell'India)
  • C'è anche molto risentimento quando i programmatori occidentali devono passare il tempo a “fare da baby-sitter” ai programmatori indiani piuttosto che scrivere codice da soli, a differenza dei programmatori tirocinanti nel Regno Unito, sai che il prossimo mese dovrai semplicemente ripeterlo con un altro set di programmatori India.

Più ci penso, Penso che i problemi riguardino tanto le aziende di software che pensano di poter risparmiare denaro esternalizzando la programmazione a programmatori che non hanno alcuna comprensione (o reale interesse) del dominio del problema. ( Comprendere come funziona l'Occidente fa parte del dominio del problema).

(La falsa convinzione che una persona di "vendite" possa bypassare il reparto di sviluppo interno, scrivere una specifica e quindi ottenere alcuni programmatori indiani a buon mercato per scrivere il codice, è ancora molto comune.)

Ho avuto una migliore esperienza con il programmatore dell'Europa orientale, poiché vedono per capire meglio l'Occidente, sono in un fuso orario migliore. È anche possibile che qualcuno salti su un aereo con un volo di lunghezza ragionevole (e un piccolo ritardo di jet) per le riunioni faccia a faccia regolamentari.

1
Ian

Ho lavorato in una grande azienda multinazionale che aveva istituito un ufficio indiano dedicato. Hanno inoltre utilizzato consulenti indiani di una società separata. L'ufficio indiano aveva un personale meglio retribuito che si era trasferito dagli Stati Uniti. Ho sempre trovato il lavoro dell'ufficio indiano di altissima qualità. I consulenti meno retribuiti erano principalmente impiegati per i test e qualsiasi lavoro di sviluppo svolto era generalmente scarso.

Sebbene sia d'accordo con molte delle osservazioni culturali negli altri post, penso che l'economia sia un fattore nel determinare la qualità. Ci sono pochi bravi ingegneri a livello globale. Una piccola parte del pool di lavoro disponibile. Definisco un buon ingegnere come qualcuno che è curioso, ben informato e ha avuto una buona educazione per sviluppare queste abilità. Poiché la domanda supera l'offerta, vengono assunti a livello globale. C'è un piccolo numero di incredibili ingegneri in India. La maggior parte di questi sono laureati delle università indiane di alto livello (come l'IIT). Allo stesso modo c'è un numero molto piccolo di ingegneri nativi occidentali di talento.

Inversamente ci sono un numero molto alto di ingegneri poveri e medi. Ricordo nel boom delle dot com che le aziende assumevano laureati in storia occidentale, che riuscivano a malapena a sputare un po 'di HTML, perché erano così disperati per il personale. Ora un povero ingegnere in Occidente non avrebbe trovato lavoro. Ora puoi assumere l'equivalente in India per una frazione del prezzo. Pertanto si ottiene una concentrazione di personale molto scarso nelle consulenze indiane.

Di tanto in tanto avrei incontrato alcune gemme nelle consulenze. Erano naturalmente brillanti e avrebbero posto molte domande. Di solito stavano compensando un cattivo allenamento. Ciò che è triste è che non avrebbero ottenuto alcun sostegno dai loro datori di lavoro. Molte politiche di consulenza sono progettate per limitare le competenze che un consulente può acquisire, ad esempio un periodo di rotazione di sei mesi applicato tra i contratti.

1
user18262

Il mio aneddoto:

Alcuni anni fa ho lavorato a un progetto con un team dall'India. Li ho trovati estremamente piacevoli con cui lavorare. Conoscevano davvero le loro cose. Il nostro unico punto di attrito era il tempo di risposta alle modifiche dell'ultimo minuto da parte del cliente; anche se per essere onesti, l'ego di gestione non sempre si traduce bene in lingua e distanza.

0
JohnWinkelman

Direi che è lo stesso dei programmatori di qualsiasi luogo, a volte un programmatore è bravo, a volte è cattivo.

Ho lavorato in più team con programmatori del mondo "orientale" (compresa l'Europa ... che IS est di me. Alcuni di loro erano cattivi, altri erano buoni.
Una volta ho lavorato con un uomo indiano che era il programmatore più veloce e abile con cui abbia mai lavorato. Molto raramente aveva un bug e il suo codice era sempre pulito e ordinato e fatto prima che fosse previsto, inclusi i test.
D'altra parte, ho lavorato con un uomo indiano che ha trascorso 9 mesi alla sua scrivania al cellulare ridendo e parlando. I gestori non erano sicuri di cosa fare con lui, perché il suo lavoro è stato sempre svolto. Non è stato sempre il miglior lavoro ma è stato fatto. 9 mesi dopo scoprirono che aveva trascorso tutto il suo lavoro lì inviando il lavoro ai suoi amici e familiari in India senza dirlo a nessuno. Si era trasformato nel manager di un team di sviluppo in outsourcing per sua scelta.

Gli umani sono umani. Alcuni fanno schifo, altri no.

0
James P. Wright

L'errore peggiore che ho fatto è l'outsourcing in India. Era solo per HTML di base e i programmatori erano più che in grado di programmare PHP e SQL (almeno lo pensavano comunque). Li abbiamo esternalizzati per creare alcuni moduli per noi, e cosa sono usciti con centinaia di tavoli uno dentro l'altro. Non solo, ma il capo progetto ha preso una vacanza di tre settimane senza nemmeno comunicare con noi.

Da quello che ho visto in Oriente, non credo che l'Oriente meriti l'attenzione dell'Occidente. Ancora una volta, non ho nulla contro gli indiani, sono incredibili, ma gli indiani che ho sperimentato hanno un'etica del lavoro orribile.

Il mio consiglio: saresti pazzo di esternalizzare in India.

0
user22019

Personalmente, penso che ognuno sia diverso. Ne ho visti alcuni buoni, altri cattivi.

Penso che ci sia una percezione negativa, perché la maggior parte degli occidentali ha a che fare con consulenti e consulenti tendono a fare il meno possibile e cercano modi per incolpare gli altri per ciò che hanno fatto di sbagliato.

Un'altra cosa da tenere a mente, molti programmatori americani sono immigrati dall'India. Non ho le statistiche, ma immagino circa la metà di esse.

0
Joe

In uno dei miei precedenti lavori ho lavorato a un progetto che aveva diviso lo sviluppo tra Irlanda, Stati Uniti e India. Alcuni aspetti imbarazzanti del progetto non potevano essere aiutati ad es. la differenza di fuso orario, ma il fatto che spesso gli indiani avevano un inglese scritto piuttosto scarso significava che cose come i rapporti sui difetti potevano richiedere molto tempo per decifrare. Successivamente ho trovato più facile alzare il telefono e chiamare la persona direttamente dove possibile. È molto più facile chiarire cosa significa qualcuno se puoi parlare con loro piuttosto che inviare e-mail dopo e-mail.

Mentre l'outsourcing è fondamentalmente sulla riduzione dei costi, ci sono sviluppatori di talento in tutto il mondo. La parte difficile è riuscire a distinguerli dal meno talentuoso!

0
Malice

Sono un programmatore ASP.NET/C# dalla Cina. Sono totalmente d'accordo con Péter Török. Abbiamo appena assunto un progetto sviluppato da Philipen per diversi anni. Il codice è il più disgustoso che abbia mai visto. Ogni singola classe ha almeno 3000 linee. Sono tali perditempo perché il codice è davvero prolissità. non hanno idea di cosa sia il riutilizzo. E non fanno unit test. L'intero sistema è sul bordo del crash.

Attualmente stiamo cercando di correggere il bug per l'enorme progetto. Il lavoro è davvero come un incubo.

0
gekowa

Sono abbastanza sicuro che la percentuale di buoni sviluppatori sia la stessa nella parte orientale del mondo rispetto a qualsiasi altra parte. Ciò implica che ci sono alcuni buoni sviluppatori nella parte orientale del mondo, come ovunque.

Il problema deriva dal fatto che "vendere software" è il modo più semplice per fare soldi, quindi molte persone fanno finta di sapere come sviluppare perché hanno scritto 3 righe di codice Php e provano a vendere software (= outsourcing).

Quindi, è semplice matematica juste: ci sono molte cosiddette società di software, ma ci sono pochi veri e propri sviluppatori nella parte orientale del mondo , come altrove. Per capire, usa i numeri, anche se non sono reali:

  • 100 aziende di software nella parte occidentale del mondo. 50 di loro sono buoni.
  • 10000 aziende di software nella parte orientale del mondo. 50 di loro sono buoni.

Quindi ... le probabilità che tu ottenga una cattiva società di software sono molto più alte nella parte orientale del mondo che in qualsiasi altra parte. Ma il fatto importante è che ci sono tanti buoni sviluppatori nella parte occidentale che nella parte orientale.

In aggiunta, c'è un problema di mentalità che peggiora le cose.

E per concludere a ciò che sta accadendo in Francia: ci sono stati migliaia di progetti che sono stati esternalizzati, con risultati catastrofici, e molti di loro erano grandi progetti (l'outsourcing di grandi progetti era come un grande risparmio). Quindi ora, veri geek e uomini come me, che sono veri sviluppatori (vero sviluppatore = non attratto prima dai soldi) hanno molto lavoro in Francia, perché ho fatto scavare in tutto ciò che è stato fatto, dare "conclusioni di esperti" e la società agisce. Sono molto ben pagato, quindi tutto in uno, non è poi così male;)

Per favore, non esitate a correggere il mio post, per renderlo inglese corretto, perché il mio inglese è perfezionabile.

0
Olivier Pons

Bene, essendo dagli Stati Uniti e avendo esperienza di lavoro con alcune aziende in India, direi che è difficile ma migliorare. Sento che sono tecnicamente in grado di fare ciò che chiedi, ma devi davvero delineare tutto nei dettagli o sarà un progetto molto lungo e disordinato. Questo non perché gli indiani non capiscono quello che vuoi, ma pensano in modo diverso, almeno da un aspetto di usabilità nel tuo progetto.

Darò solo una rapida per esempio. Avevamo un progetto in cui un'azienda indiana stava costruendo la nostra interfaccia utente e alcune connessioni al database. Quando il progetto era quasi finito, lo abbiamo visto e, a prima vista, è stato perfetto. Quindi quando abbiamo iniziato a eseguire il programma ci siamo resi conto che qualcosa non andava. Quando siamo andati ad aggiungere qualcosa, e tu eri sulla pagina, per qualche motivo dovresti premere il pulsante Aggiungi anche se eri già lì, quindi digitare le informazioni e quindi il pulsante di invio.

Questo ci è sembrato controintuitivo poiché immaginavamo di essere già nella pagina e non avevamo bisogno di premere il pulsante Aggiungi e di compilare le informazioni, quindi selezionare il pulsante di invio e non sarebbe successo nulla. Hanno progettato ciò che abbiamo chiesto, ma funzionalmente non aveva alcun senso per noi qui in Occidente, quindi abbiamo finito per riprogettare l'intero back-end.

Trovo che lavorare con altri paesi, sebbene a costi inferiori, sembra richiedere più tempo e potrebbe effettivamente costare di più a lungo termine se si ha a che fare con la sensibilità del tempo nei confronti dei concorrenti. Su quel progetto i nostri concorrenti sono finiti qualche anno davanti a noi a causa delle difficoltà che abbiamo avuto. Ora so che tutto ciò è dovuto a interruzioni della comunicazione e comprensione e sento che devi avere qualcuno che sia bravo a spiegare il processo e che possa parlare tecnicamente con entrambi i gruppi allo stesso livello per rendere le cose più fluide.

0
user18642