it-swarm.it

Che cos'è un dottorato di ricerca buono per l'industria del software?

Sono un programmatore autodidatta e ho appena iniziato una laurea in informatica per integrare le mie conoscenze e colmare le lacune.

Tuttavia, sto già discutendo della direzione della mia educazione. Voglio una laurea di 4 anni di sicuro, ma dopo non sono sicuro: ne vale la pena ottenere un Master? Che dire di un dottorato di ricerca? Quali opportunità aprono questi gradi?

Attualmente il mio obiettivo è quello di essere uno sviluppatore di software, ma ci sono una serie di campi affascinanti nel settore del software e sono sicuramente interessato a indagare su molti di essi. È a questo proposito che penso che ne valga la pena un grado superiore, anche se non aiuterebbe necessariamente una carriera nello sviluppo di software.

Ne varrà la pena? La scuola di specializzazione aprirà le porte?

52
Carson Myers

Ottenere un dottorato di ricerca ti fa due cose e dura fino a 4 o più anni. Dovrai decidere se valgono le due cose. Innanzitutto, ti dà alcune iniziali dopo il tuo nome. Per il resto del tempo, le persone che vedranno quelle iniziali penseranno "wow, devi essere davvero intelligente!" (e spesso, lo diranno ad alta voce.) In un curriculum in genere ti aiuterà, anche se in alcune circostanze potrebbe farti del male, con la gente che pensa che tu sia troppo qualificato o una testa d'uovo.

In secondo luogo, e soprattutto a mio avviso, sono i cambiamenti nel tuo cervello e il tuo atteggiamento che si verificano nel corso della laurea. Finirai per sapere di più su una piccola parte del mondo di qualsiasi altra persona. Sarai di fronte a 3 o 4 persone che sono esperti, a volte esperti di fama mondiale, e insegnerai loro il tuo lavoro. Quando entrerai, quegli esperti saranno supervisori, esaminatori, "capi" di una specie e quando uscirai saranno i tuoi colleghi. Imparerai molto su un angolo dell'informatica e molto di più su te stesso e le tue capacità. Sarai sicuro di essere "l'esperto" quando richiesto. E questo cambia tutto.

A meno che tu non sappia ora che vuoi diventare un prof, o unirti a un particolare laboratorio di ricerca, mi sembra insolito che tu possa decidere del dottorato prima di fare il lavoro di laurea. Vai a fare gli studi universitari e fai amicizia con alcuni studenti universitari. Ti diranno tutto ciò che vuoi sapere sulla vita di uno studente universitario, la vita di un bambino prof, le prospettive di lavoro quando sei fuori e altro ancora.

Non rimpiango il tempo che ho trascorso nel mio dottorato. Mi ha aperto molte porte. Mi ha reso più memorabile ("giusto, sei la donna con il dottorato, vero?") Ed è stata una risorsa per alcuni dei miei team indipendentemente dalle mie capacità o conoscenze ("abbiamo un dottorato nel nostro team ! "). Ma l'industria a cui ho aderito allora non è quella a cui ti stai unendo ora. Parla con le persone che sono nel bel mezzo di questo momento e poi prendi una decisione mentre finisci il lavoro di laurea.

106
Kate Gregory

Qualcuno può nominare un CEO di una grande azienda che ha un dottorato in informatica? Steve Jobs? abbandonato l'università, perché odiava notoriamente i pezzi noiosi. Bill Gates? si ritirò anche perché si sentiva circondato da persone non intelligenti come lui (basato su GPA).

Ho lavorato per aziende che hanno programmatori fantastici che lavorano su sistemi incredibili, alcuni dei quali la gente usa ogni giorno (ad esempio Windows) e altri che aiutano le industrie ad andare d'accordo (ad esempio XML e SOAP). Molti di questi ragazzi erano autodidatti e studiavano materie diverse dall'informatica, ad esempio fisica o ingegneria elettronica. Il motivo della programmazione nella loro vita era come uno strumento per portare a termine il loro lavoro, piuttosto che studiare la programmazione per imparare a fare la programmazione.

Ho anche lavorato con il governo e le grandi società che hanno laureati sorprendenti a Cambridge che non hanno avuto solo uno, ma due dottorati. Questi erano ragazzi incredibilmente intellettuali che creavano soluzioni sofisticate ed eleganti a problemi molto specifici in campi come le comunicazioni e l'elaborazione del segnale. Non erano ricchi, né avevano lavori di alto livello nei loro dipartimenti. Sembrava che fossero stati assunti come "bara" e lasciati soli a pensare a queste soluzioni.

Nella mia esperienza nel settore, non esiste alcuna correlazione tra capacità di programmazione e livello di istruzione formale nel campo dell'informatica. All'inizio come ingegnere del software, ho visto persone promosse oltre me la cui programmazione era "non buona come la mia" (IMO, ovviamente) - ma avevano le capacità di ingegneria sociale per capire quali fossero le cose giuste da dire le persone giuste e quando. Non si sono fatti avanti - potevano fare il lavoro, è solo che altre abilità (parlare con i clienti, rispettare le scadenze, ecc.) Erano importanti, quindi non hanno trascorso il 100% del loro tempo a scrivere codice come ho fatto io .

Ho imparato un'importante lezione: se hai il fuoco dentro di te per avere successo, troverai la soluzione, la programmazione o altro, al problema aziendale in mano per rendere la tua azienda/dipartimento più riuscita e quindi più redditizia.

Di tutti i programmatori che ho assunto, non mi importava della loro esperienza scolastica. Se hanno superato i test di programmazione e i miei ingegneri di testa erano soddisfatti delle loro capacità, l'educazione non aveva importanza. Uno dei migliori ragazzi che abbiamo assunto era appena uscito dalla scuola, cioè senza una laurea.

In sintesi, se sei appassionato della tecnologia e dell'arte/scienza della programmazione stessa, persegui sicuramente un percorso accademico avvincente e affascinante. Se stai cercando di andare in posti e avere successo oltre la semplice programmazione, allarga la tua attenzione per includere altre abilità come affari e psicologia/sociologia. Decidi cosa vuoi veramente tra 10, 20, 30 anni da allora e poi lavora all'indietro per determinare quale corso d'azione ti porterà a quegli obiettivi.

Per rispondere alla tua domanda: un dottorato di ricerca è buono per qualcosa di veramente di nicchia. Probabilmente non pagherà bene, ma potrebbe essere interessante.

26
JBRWilkinson

Bene, ho seguito la strada del dottorato (lentamente e dolorosamente). Non avevo uno "scopo", come quello che mi avrebbe aiutato a ottenere diversi tipi di lavoro. L'ho fatto perché volevo sapere le cose.

Ero stato un programmatore e pensavo che la programmazione fosse praticamente un argomento essenziale, tranne che avevo letto il libro di Isaac Asimov "I, Robot" e che volevo poter costruire robot, e non sapevo come. Volevo sapere come far pensare un computer, capire il linguaggio naturale, vedere, camminare, ecc. Il punto è che c'erano cose che non sapevo fare e che volevo scoprire.

Quindi qual è il risultato? Ho imparato qualcosa su come far sì che i programmi per computer pensino, vedano, ecc., Ma ho anche imparato che si tratta di argomenti molto più profondi e più ampi, degni di una vita di inchiesta. Lungo la strada ho imparato molta teoria e matematica e ho imparato che c'è molto altro da imparare.

Ho anche imparato molto che mi aiuta a sviluppare software, di cui ho scritto un libro e alcuni articoli e pubblicato su StackOverflow. Mentre penso che mi renda più efficace, penso che mi renda anche un po 'estraneo nei team di programmazione.

Quindi ti è stato d'aiuto? Credo di si. Non vorrei essere la persona che ero prima.

19
Mike Dunlavey

C'è un malinteso nella tipica comunità di sviluppatori secondo cui un dottorato di ricerca è richiesto solo se si desidera "insegnare". Probabilmente è un aggancio ai vecchi tempi in cui la maggior parte dei dottorandi andava in università, ma oggigiorno molti dottorandi (specialmente i laureati in ingegneria/informatica) entrano nel settore conducendo ricerche nei laboratori o facendo impegnativi lavori di sviluppo in aziende come Intel , Oracle, Google, Microsoft, ecc.

Soprattutto negli Stati Uniti, con l'avvento del trasferimento di tecnologia/spin-off di idee di ricerca dall'accademia alle startup, ora esiste un forte legame tra la ricerca condotta nelle università e le start-up ... Stanford, MIT, Florida, CMU e altri sono gli esempi popolari e nessuno ha bisogno di ricordare che Google era anche un progetto di ricerca.

Fare un dottorato di ricerca è una decisione personale, ma ti dà approfondimenti in alcune aree e impone un livello di dedizione e perseveranza per combattere attraverso forti difficoltà e critiche ... per inciso, abilità che sono anche richieste dalle start-up. Non sto dicendo che non è possibile avere successo senza un dottorato di ricerca proprio come i programmatori autodidatti che possono programmare bene senza andare al college, ci sono molti esempi di programmatori con solo un Bsc. o msc. che hanno imparato concetti avanzati di tecnologia/CS e hanno avuto successo nelle migliori aziende di tutto il mondo.

Nel complesso, penso che questo sia un grande argomento di discussione, ma un dottorato al giorno d'oggi non è solo per insegnare ..

11
fjxx

Potrebbe aprire più posizioni tecniche e posti di lavoro in grandi aziende di tipo Oracle. L'importante è che ti dia una specialità molto focalizzata. Per i datori di lavoro, sei il migliore che possono trovare in quella specialità (almeno sulla carta).

9
Morgan Herlocker

Questa è in realtà una domanda davvero difficile in quanto ci saranno molti fattori in gioco e potrebbero o meno applicarsi a te personalmente a seconda di un numero di variabili. In generale, quando ci si avvicina all'istruzione formale, è necessario esaminare le proprie capacità e gli obiettivi di carriera a lungo termine. Mentre alcuni sosterranno che non vi è alcuna correlazione tra capacità di programmazione e istruzione, la maggior parte sono difficili da sostenere che l'istruzione (ad esempio istruzione formale, seminari, corsi una tantum, lettura di un libro, ecc.) Inibirà le tue capacità di programmazione e in molti casi li migliorerà effettivamente. Pertanto, l'educazione tende a lavorare sempre a tuo favore a lungo termine.

Dal punto di vista dello sviluppo della carriera, a seconda di chi lavori (o per chi vuoi lavorare) la tua istruzione probabilmente influenzerà il percorso che la tua carriera può intraprendere. Mentre puoi avere abbastanza successo senza alcuna laurea, scoprirai che ottenere il lavoro dei tuoi sogni può dipendere fortemente dal tuo background educativo. Ciò è dovuto al fatto che la maggior parte delle aziende di medie e grandi dimensioni tende a richiedere che i propri dipendenti abbiano un certo grado di istruzione formale che può essere richiesta per le assunzioni. Pertanto, per ogni persona di cui hai sentito parlare che non tiene conto dell'istruzione nelle assunzioni, incontrerai i dipartimenti Risorse umane (HR) che dichiareranno che "Laurea in Informatica richiesta" nel loro annuncio di lavoro e non si preoccuperà nemmeno di guardare un curriculum che non include uno.

In termini di gerarchia educativa, generalmente puoi aspettarti di vedere le cose che funzionano come segue:

  • Nessuna istruzione - Se hai precedenti, questo potrebbe non farti del male con un buon numero di aziende e potresti essere in grado di andare abbastanza lontano se sviluppi alcune conoscenze abbastanza specializzate che è possibile utilizzare per la consulenza. Detto questo, tuttavia, per ogni storia di successo che ascolti, ci sono anche molti sviluppatori di cui non hai sentito parlare di quello che mantengono lo stesso lavoro e che non avanzano molto in termini di carriera. Le competenze di rete e sociali possono aiutarti a lungo termine, ma scoprirai che alcune porte sono chiuse a causa della mancanza di un'istruzione formale.
  • Diploma di laurea - Questo è un livello difficile da definire in quanto può effettivamente aprire porte e le aziende che richiedono un diploma di laurea possono soddisfare il requisito se puoi davvero dimostrare il loro valore per loro, ma molto probabilmente non ti renderà equo in tali società. Questo potrebbe essere un buon trampolino di lancio in termini di carriera in quanto può aiutarti a ottenere un lavoro con benefici educativi, ma alla fine potresti scoprire che le persone iniziano a spingerti verso una laurea.
  • Laurea - Questo tende ad essere il grado di base generale che aprirà molte porte e generalmente non ne farà chiudere nessuna a meno che non siano di livello superiore posizioni che possono dipendere dal settore. In termini di ritorno sull'investimento, è probabile che il grado di Bachelor tenda ad avere il più alto rendimento in cambio della quantità di lavoro che ci metti (i costi finanziari possono essere troppo variabili per essere un fattore).
  • Master - In generale, non dovresti andare per un Master a meno che qualcun altro non lo stia pagando o non hai l'opportunità di ottenerlo al contemporaneamente alla tua laurea senza molto lavoro aggiuntivo (ad esempio un programma di doppia laurea quinquennale). A lungo termine, nel settore della cooperazione, il Master aprirà alcune porte che potrebbero non essere state aperte solo con il diploma di laurea, ma potresti non trovare effettivamente quelle porte a meno che non le cerchi attivamente (es. Ricerca e sviluppo posizioni di stile). Nelle aziende più grandi (ad esempio Fortune 500), la maggior parte dei dirigenti di livello medio e superiore avrà un master e in genere è considerato un requisito per salire in azienda. Detto questo, tuttavia, la maggior parte delle aziende che hanno un requisito (formale o meno) di un Master per la direzione superiore in genere avranno benefici educativi che è possibile utilizzare per ottenere la laurea mentre si sta lavorando.
    Da un punto di vista accademico, il Master è in genere il livello minimo di istruzione richiesto per insegnare a livello collegiale, ma in genere si è limitati a chiodi di lezione a pagamento inferiore su cui generalmente non si può fare affidamento per un impiego stabile. Questo potrebbe essere un grande obiettivo a lungo termine quando ti avvicini all'età pensionabile, ma quando sei più giovane potrebbe causare stress.
  • Laurea di dottorato - Se vuoi trovare posizioni di ricerca di alto livello o andare in università, è necessario un dottorato di ricerca. Per tutti gli altri, un dottorato di ricerca è semplicemente un piacere avere e in alcuni casi un dottorato chiuderà effettivamente le porte (cioè le posizioni degli sviluppatori entry level) per una serie di motivi. Detto questo, se ti piace davvero l'informatica e vuoi davvero imparare tutto ciò che c'è da sapere su qualcosa, vai per il dottorato e non guardare indietro. Praticamente tutti quelli con cui ho mai parlato hanno detto qualcosa del tipo: "Non ottenere un dottorato per i soldi, fallo perché ami davvero la ricerca e sai tutto quello che c'è da sapere su qualcosa".

Per arrotondare tutto il resto, qui ci sono un paio di altre forme di educazione formale che potresti incontrare:

  • Certificazioni fornitore - Certificazioni fornitore come MCAD o OCPJP hanno un valore molto misto in quanto tendono ad essere buoni solo per un paio di anni prima della scadenza e la maggior parte degli intervistatori non si preoccupano molto di loro. Detto questo, se stai cercando di spostarti in una diversa area di sviluppo (ad esempio da Windows a Java sviluppo) potresti scoprire che possono farti trovare un lavoro se qualcuno è scettico sulle tue capacità di svolgere il lavoro per il quale ti stai candidando. Allo stesso modo, quando inizi, possono aiutarti a ottenere quel primo lavoro se non hai un'istruzione formale, ma tendono ad avere un ritorno sugli investimenti limitato.
  • Post Bachelor Certificates - Questi sono offerti da college e università come un modo per formalizzare un corso di lavoro che potrebbe non essere degno di una laurea completa o master , ma richiede una sorta di riconoscimento formale. Nella maggior parte dei casi, questi sono utili solo se stai cercando un background formale in un'area di debolezza sul lavoro (ad esempio matematica) o se stai lavorando in un campo in cui hai bisogno di un'istruzione formale in questo campo in cui non hai alcun background se stai lavorando in bioinformatica potresti voler seguire alcuni corsi di biologia). Dal punto di vista della carriera, vale la pena andare avanti se qualcun altro li sta pagando, ma in genere non vedrai molto valore aggiunto oltre le conoscenze che ottieni. L'eccezione a quel punto finale è se stai cercando di cambiare carriera tutti insieme, nel qual caso tendono a rappresentare una barra inferiore rispetto a un master nel settore che potrebbe richiedere un buon livello di "trucco" che un diploma di laurea titolare nello stesso campo non dovrebbe prendere.
  • Master of Business Administration (MBA) - Lo sto includendo perché è un grado comune vedere che è detenuto dai dirigenti e non è raro vedere gli sviluppatori che stanno cercando di entrare nella gestione perseguendo uno. A lungo termine, è un grado che può aiutarti ma probabilmente starai meglio aspettando fino a quando non avrai stabilito la tua carriera e avrai una buona idea di dove vuoi andare prima di raggiungerlo.
  • Certificato di studio avanzato - Questi sono offerti da college e università come un livello di istruzione che ha superato un master ma è inferiore a un dottorato. Ancora una volta, il valore di questi può essere difficile da dire in quanto sono generalmente qualcosa che è difficile da quantificare. La maggior parte delle persone che ho conosciuto per assumerli avevano ragioni molto specifiche per farlo, generalmente per lo sviluppo della carriera, ma erano anche più tardi nella loro carriera e o cercavano di aumentare un po 'il loro stipendio o di lavorare su qualcosa di specifico altrimenti non potrebbero.

Quindi torna indietro al punto originale, un dottorato di ricerca. può avere un valore discutibile se stai solo cercando un lavoro come sviluppatore, ma può portarti abbastanza lontano se vuoi lavorare con nuove tecnologie che non sono ancora fuori dal laboratorio. Generalmente una maggiore istruzione non ti farà del male, ma devi essere a tuo agio con gli investimenti di tempo che sono coinvolti negli studi.

6
rjzii

La scuola di specializzazione vale la pena quando hai intenzione di avere una carriera nel campo accademico. Per l'impiego tipico nello sviluppo di software, la scuola di specializzazione non è affatto un requisito.

Ti sarebbe utile nel senso che probabilmente avresti ottenuto più interviste grazie a un dottorato di ricerca. sembra piuttosto impressionante sul tuo curriculum. Ma in termini di utilizzo effettivo delle tue conoscenze, dovresti cercare un lavoro specializzato o fare più ricerca che sviluppo per ottenere davvero i frutti.

Detto questo, penso che valga assolutamente la pena una laurea. Ti espone al mondo dell'informatica e ti dà le basi per rendere più facile l'apprendimento più approfondito di qualsiasi aspetto ti interessi o sia necessario per il tuo lavoro.

6
Adam Lear

Fornisce un enorme aumento di stipendio se lavori per il governo.

Vedi Livelli GS .

Aneddoticamente ho sentito che può fare una differenza di 30k/anno.

4
C. Ross

La qualifica di dottorato è buona se si desidera lavorare per aziende come Oracle, Google, Microsoft, IBM ecc. È anche importante avere quando si lavora come ricercatore o docente/professore presso un'università. Non farlo semplicemente per il titolo, dato che in quei 3 o 4 anni puoi ottenere molto di più nella vita di un altro pezzo di carta. Risparmierai tempo e denaro e farai altre cose che ti piacciono come ballare, cucinare, fare snowboard, viaggiare, gestire un'attività commerciale ecc. Infine, non affrettare la decisione. Prenditi il ​​tuo tempo e scopri cosa vuoi davvero fare e cosa ti rende felice. Se ti piace sviluppare software, un corso di laurea va bene per molte aziende.

4
Siamac Nikoo

Lauree avanzate (MBA, MSC, ecc. (Vale a dire eccetera - non esiste un titolo ETC - AFAIK :-)) sono utili e talvolta persino necessarie se si desidera essere un dirigente di medio livello in una grande azienda (Fortune 500). I dottorati di ricerca sono necessari se il tuo obiettivo è insegnare a livello universitario, o lavorare in un istituto di ricerca o nel centro di ricerca di una grande azienda, o se vuoi un pezzo di carta da appendere al muro per impressionare le persone.

Questa è solo la vista dal centro del paese: le percezioni sulle coste possono essere diverse. YMMV.

Dalla mia esperienza personale, 3 anni di esperienza pratica in un settore IT con una laurea o post-laurea guadagnerebbero sicuramente più peso di un dottorato di ricerca.

Dal punto di vista del lavoro nel settore IT, i laureati con un background artistico e scientifico come BSC potrebbero sicuramente optare per un diploma post-laurea come un MCA o MSC fungerebbe da catalizzatore per entrare in un Settore IT.

Nella nostra azienda, mentre reclutavamo sviluppatori di software, il requisito minimo era una laurea in arte e scienze con un'adeguata programmazione e abilità logiche classificate con test di programmazione pratica, ma poiché la concorrenza è aumentata nel tempo, la qualifica minima è stata cambiata in ingegneria o un diploma post-laurea.

2

Ho una laurea magistrale, non mi ha aiutato nulla. 2 anni della mia vita persi per sempre. Almeno in Romania, nello sviluppo del software, la conoscenza conta di più. Un diploma universitario aiuta un po 'e in alcune circostanze specifiche.

M.Sc e Ph.D sono buoni solo se hai piani in una carriera nel campo dell'istruzione o della ricerca.

2
Patkos Csaba