Vuoi diventare un programmatore? Ecco cosa NON ti serve per essere assunto
In questo articolo voglio spiegarti cosa NON ti serve per diventare un programmatore informatico, sia se tu voglia trasformare la tua passione in una nuova professione, sia se tu voglia farti assumere da un'azienda di informatica.
Sicuramente qualche punto di questa lista potrà andare in contrasto con le credenze che hai. Molte volte siamo condizionati da ciò che leggiamo nei gruppi, nei forum di programmatori. Sono sicurissimo che c’è sempre qualcuno che critica le mie opinioni, ma io te le voglio dire perché le vedo messe in pratica dai miei studenti che trovano lavoro anche senza avere queste particolari skill. In più lavoro in questo campo da oltre 15 anni, quindi direi che ne so qualcosa.
Cosa non serve per diventare programmatore
- Non serve la laurea in informatica per essere assunto come programmatore. Ho degli studenti che non hanno la laurea in informatica che hanno seguito i miei corsi e sono stati assunti come programmatori. Anche se nei forum ti diranno che non è possibile perché ti servono le basi, non è vero! Essenzialmente nell’ambito della programmazione c’è un’enorme richiesta di lavoro, non solo in Italia ma anche in Europa, in tutto il mondo. Dall’altro lato, il numero di laureati in informatica è veramente basso. Questo vuol dire che le aziende si sono accorte che non bastano i laureati in informatica per colmare questa mancanza, quindi di conseguenza le aziende provano a rivolgersi ad altri mercati. Si indirizzano quindi a persone che non hanno la laurea in informatica. Se non mi credi puoi chiedere a qualsiasi programmatore che già lavora all’interno di un’azienda. Chiedigli se i suoi colleghi programmatori hanno tutti la laurea in informatica. La risposta te la do già io: ti dirà di no! Probabilmente ci sarà qualcuno con un semplicemente diploma ma con esperienza, ci sarà qualcuno laureato in facoltà umanistica come lettere filosofia e quant’altro. Potresti trovare addirittura anche un neodiplomato, entrato nell’organico dell’azienda dopo aver fatto un mini corso di formazione. Quindi il fatto di avere la laurea non è un obbligo. Se ce l’hai è meglio, ma di base non è obbligatorio.
- La matematica. Molti pensano che per essere un bravo programmatore bisogna per forza conoscere la matematica, avere delle solide basi di matematica. La verità è che non è così. Innanzitutto bisogna fare una piccola premessa, c’è una distinzione da fare tra l’informatica e la programmazione:
La programmazione è soltanto una delle tante discipline racchiuse all’interno dell’informatica
Quindi possiamo dire che è vero che conoscere la matematica ti può essere utile nell’ambito dell’informatica in generale, però per quanto riguarda la programmazione nello specifico la matematica non è necessaria.
Facciamo degli esempi pratici. Immaginiamo che tu voglia diventare un esperto nello sviluppo front-end oppure backe-end. Conoscere e avere delle forti basi di matematica non ti serve assolutamente a niente e soprattutto non sono nemmeno richieste dalle aziende. Quindi quand’è che può essere utile avere delle conoscenze di matematica? Quando facciamo tutto ciò che è “lontano” dallo sviluppo web o comunque dallo sviluppo classico. Con sviluppo classico intendo siti internet, applicazioni e potenzialmente software. Quando noi ci allontaniamo da queste aree di sviluppo può essere interessante avere delle basi di matematica, stiamo però parlando ovviamente di sviluppo di basso livello. Questo non vuol dire scarso, ma bensì che è a stretto contatto con l’hardware. Ad esempio ha senso anche se vuoi fare il Data Scientist, quindi lo scienziato dei dati, cioè studiare i dati base di statistica. Quindi tutti gli ambiti che sono lontani dal "classico sviluppo".
Io ti parlo di "classico sviluppo" perché in realtà il 99% degli annunci aziendali che trovi su internet si basano proprio sullo sviluppo di siti, app, API. Tutto quello che non è classico richiede la matematica.
- Non devi per forza essere bravo o brava con il computer, o meglio devi saperlo utilizzare a livello elementare, cioè devi saperlo accendere, spegnere, avere il concetto di desktop, di cartella, di navigazione tra le cartelle e così via. Il programmatore infatti non deve per forza avere delle competenze sull’uso del computer, non deve per forza saper aggiustare il modem se ci sono problemi o sostituire un hard disk. Quelle sono aree che non sono di sua competenza. Inoltre, mi voglio soffermare un attimo su questo punto per darti un consiglio per quanto mi riguarda una delle competenze più importanti che invece un programmatore deve avere è quella di saper trovare le soluzioni ai problemi. Mi spiego meglio, quando tu andrai a lavorare in un’azienda perché sai utilizzare determinati linguaggi, determinate tecnologie, una volta che ti inseriranno in progetti ti troverai davanti a degli errori che non hai mai visto prima. In quel caso devi essere bravo a trovare le soluzioni. Come fanno i programmatori a trovare le soluzioni? Ci riescono in due modi:
- Guardano la documentazione ufficiale, o chiedendo a un loro collega più esperto se mai abbia avuto quel problema e quindi si fanno spiegare come si deve risolvere.
- Cercano su Google un altro sviluppatore che ha avuto esattamente quello stesso problema e vedono come l’ha risolto.
Ad esempio se devi settare la variabile d’ambiente per il tuo linguaggio di programmazione non è che devi saperlo già fare di base, molto più semplicemente puoi chiedere agli altri o cercare su Google e li troverai le soluzioni. Questa quindi è una delle competenze che dovresti avere in generale: devi essere bravo a trovare soluzioni.
- Non devi essere un genio. Questa diciamo è più una provocazione, ma vorrei che fosse chiaro. Facciamo un esempio pratico. Se sei uno studente prova a pensare a tutti gli studenti che frequentano con te i corsi. Tra tutti gli studenti della tua facoltà ci sarà qualcuno che è molto bravo, quindi potrebbe essere definito un genio. Ci saranno poi poche persone che sono scarse, ma la maggior parte delle persone sono nella media. Nella programmazione c’è esattamente la stessa situazione: la maggior parte dei programmatori sono nella media e ti assicuro che le aziende pagano lo stesso lo stipendio sia che lavori bene, quindi sei in quella piccola percentuale che viene considerata geniale, sia se invece sei nella media. Tra l’altro te lo pagano anche se sei in quella piccola percentuale di programmatori sotto la media. Non sono tutti Steve Wozniak per intenderci!
- Non devi essere appassionato. Quello che ti vorrei far capire è che essenzialmente non devi per forza essere appassionato di qualcosa per essere bravo, puoi essere bravo in qualcosa sanza esserne appassionato. Per essere un programmatore non devi per forza essere appassionato.
Ti voglio citare un esempio emblematico di un mio amico. Lui voleva diventare un medico. Ha fatto ha provato a iscriversi a medicina ma non è passato. Ci ha riprovato ma ancora non è riuscito ad entrare. Avendo già una certa età ha smesso di provarci ed è entrato nella facoltà di informatica. Oggi lavora come programmatore. Quindi quello che vorrei farti capire è che la passione se ce l’hai è un bene, anzi mio padre diceva sempre “se fai un lavoro con passione non sentirai la stanchezza”, ed effettivamente è così per me. Infatti quando programmo, quando studio marketing e così via, non sento la stanchezza. Quindi se ce l’hai è un bene ma se non ce l’hai chi se ne frega, puoi comunque essere uno sviluppatore senza essere appassionato di informatica.
Bene ora abbiamo visto che cosa non devi avere per essere un programmatore. Ora quindi vediamo invece secondo me secondo la mia esperienza cosa dovresti avere per essere un programmatore.
Cosa serve per diventare un programmatore
- Energia. Per diventare un programmatore devi spendere un sacco di energia. Non puoi vedere la programmazione come un hobby da fare a tempo perso. O meglio, lo puoi fare però a quel punto puoi anche lasciare perdere i miei consigli. Se invece vuoi diventare un programmatore, vuoi farti assumere da un’azienda, allora devi impiegare energia e tempo
- Tempo. Programmare non si impara dall’oggi al domani, ci vuole tempo. Se non hai un mentore, qualcuno che ti segua, qualcuno che ti indichi la strategia, ci possono volere anche anni. Se invece ovviamente segui la strategia, se qualcuno ti guida passo per passo, puoi metterci molto meno tempo. Ma da cosa dipende? Dipende dai soldi.
- Soldi. Dovrai investire in corsi di formazione, in una sorta di insegnante che ti possa guidare passo per passo. Risparmierai così una marea di tempo. Quando ho iniziato a programmare, avevo un mentore molto più esperto di me che mi consigliava e che mi dava delle strategie. Ovviamente non scriveva il codice per me, ma quando avevo un dubbio chiedevo a lui. Il dubbio veniva dissolto e potevo subito mettermi all’opera. In questo modo uno diventa molto più veloce nell’imparare, nell’apprendere. Se non hai soldi da investire sarà molto più difficile. Ci vorrà davvero molto più tempo perché dovrai affidarti a video gratuiti su YouTube oppure guide ebook che ti daranno piccole informazioni scaglionate.
Quindi se tu hai queste tre cose allora ho esattamente il corso che fa per te! Ti consiglio di dare un’occhiata al nostro corso Java, noi lo chiamiamo Java per Professionisti.
Se invece queste cose non ce le hai, perché non vuoi investire tempo, soldi ed energie, il corso non fa per te quindi lascia perdere.