È meglio ottenere una seconda laurea in informatica, o semplicemente ottenere un master in CS e saltare la seconda laurea?

Uno sviluppatore senior nella Silicon Valley (ha lavorato 4 anni alla Qualcomm e si è laureato alla Carnegie Mellon con una laurea/MS in ingegneria informatica) ha dichiarato che la seguente sarebbe la classifica in termini di commerciabilità per qualcuno che persegue una formazione in informatica:

  1. Seconda laurea in informatica (specificamente da una scuola di ingegneria) + Master in informatica (programma basato sulla ricerca) (Migliore commerciabilità, migliore base per il lavoro tecnico principale per aziende più grandi)
  2. Seconda laurea in informatica (da programma di ingegneria; No Masters) (Buon ROI e ingresso nella Valley) + Lavoro + Master in Computer Science basato su MOOC (come GTech OMSCS)
  3. Postbaccalaureate Computer Science Program (come Oregon State) + MOOC-based Masters in Computer Science (Best Masters ROI at under $15k total)
  4. Direct Masters in Computer Science (No Bachelors Needed) (Quickest Entry into the Job Market at cost of lack of engineering background)
  5. Experimental Program in Computer Science (Check out School 42 and Holberton) (Tuition-ISA programs for those with little means to afford college, ma questi sono altamente sperimentali e non hanno ancora un pool comprovato di laureati qualificati)

La ragione di questo si basa sulla conoscenza ingegneristica di base che viene concessa agli studenti di informatica provenienti specificamente da un programma di ingegneria. Sono previsti corsi multipli in algoritmi, strutture di dati, sistemi operativi e architettura di computer, oltre a più classi di matematica. Ha detto che le più grandi aziende tecnologiche come Facebook, Google, Netflix, Amazon guardano più favorevolmente i laureati di questi programmi se i candidati hanno lo stesso set di abilità. Vogliono l'ingegnere, non la persona in transizione di carriera.

Ovviamente, si può probabilmente compensare la scelta del #4 se si rafforza davvero il proprio background da ingegnere. Esercitatevi con algoritmi e strutture di dati fino a farvi sanguinare gli occhi e imparate la matematica discreta, l'algebra lineare, il calcolo e possibilmente le equazioni differenziali al contrario. Lavorate su progetti open-source su GitHub e dimostrate la capacità di risolvere problemi difficili e sarete in grado di distinguervi nonostante la vostra istruzione.

Ma dal momento che sto controllando per il lavoro che avete fatto nonostante la vostra istruzione, direi che la classifica dei gradi funziona ancora come ho elencato. In realtà non hai bisogno del numero 1 della lista se non intendi perseguire posizioni basate sulla ricerca. Puoi semplicemente perseguire la seconda laurea (da un college di ingegneria) e recuperare il master con più esperienza lavorativa.

La mia raccomandazione finale è la seguente:

  • Se hai soldi, tempo e non hai bisogno di lavorare >> Seconda laurea in CS + MS in CS (programma basato sull'ingegneria)
  • Se hai soldi, poco tempo e non hai bisogno di lavorare >> Seconda laurea in CS (programma basato sull'ingegneria) (master online opzionale quando inizi a lavorare)
  • Se hai soldi, niente tempo, non hai bisogno di lavorare ma hai bisogno di un impiego al più presto >> Master diretto in Computer Science
  • Se hai pochi soldi, tempo, e hai bisogno di lavorare >> Postbaccalaureato online in Computer Science + Master in Computer Science basato su MOOC
  • Se non hai soldi, hai tempo, e puoi o non puoi lavorare >> Programma sperimentale Tuition-ISA (di persona se non hai bisogno di lavorare o online se hai bisogno di lavorare) >> Sappi solo che il futuro con questo è un po' più incerto degli altri quattro menzionati.
  • Se non hai assolutamente soldi, non hai tempo e hai assolutamente bisogno di lavorare >> Impara da solo da posti come Coursera, Udemy, Udacity e EdX e Code, Code, Code