È fondamentale. Non penso di aver mai conosciuto un buon programmatore che non fosse autodidatta a un certo livello. In qualità di gestore delle assunzioni presso una grande azienda, posso dire che un candidato che descrive progetti personali e un desiderio di apprendere ne supererà ogni volta con un grado impressionante. (Anche se è meglio avere entrambi.)
Ecco la cosa sul college: i corsi di informatica insegnano teoria, non tecnologia. Ti insegneranno la differenza tra una tabella hash e un albero B e le basi su come funziona un sistema operativo. In genere non insegnano linguaggi informatici, sistemi operativi o altre tecnologie oltre un livello poco profondo.
Ricordo di nuovo nella notte dei tempi quando ho preso la mia prima classe di strutture dati e abbiamo ottenuto un manuale sottile per questo nuovo linguaggio chiamato "C ++" che avevano deciso di iniziare ad apprendere. Abbiamo avuto due settimane per raccoglierlo abbastanza da scrivere codice. Questa è stata una buona lezione di per sé. Questo è il modo in cui andrà la tua carriera.
Probabilmente la tua scuola non ti insegnerà ciò di cui hai bisogno per ottenere un buon lavoro. Le scuole spesso trascinano ciò che fa caldo nel settore da molti anni. Allora avrai un lavoro. Qualunque compagnia tu vada, quasi certamente non spenderà nessuno sforzo particolare per addestrarti. Le cattive compagnie sono troppo economiche, e francamente le buone compagnie assumono solo persone abbastanza intelligenti da poterle prendere mentre vanno.
Mi sono laureato in college nel 1987. Sono andato a lavorare come programmatore C con esperienza in programmi DOS, NetBIOS e "Terminate-and-Stay-Resident". Negli anni successivi, ho avuto poco o nessun vero allenamento. Guarda le offerte di lavoro ... non molte richiedono quelle capacità! L'unica ragione per cui posso essere impiegato oggi è perché ho trascorso gli anni che mi hanno seguito costantemente. Per avere successo come ingegnere, devi avere l'abitudine di imparare. Accidenti, andrei oltre: devi avere l'amore per imparare. Devi essere il tipo di persona che scherza con WebGL o Android o iOS perché sembra divertente. Se sei quel tipo di persona e mantieni l'abitudine di imparare, andrai molto lontano nel settore.