La MEGA panoramica di TUTTI i settori legati alla programmazione
Voglio scrivere un serie di articoli per poterti parlare delle singole aree richieste nel mercato del lavoro che sono in qualche modo collegate alla programmazione. L’obiettivo sarà soltanto uno, ovvero far capire alle persone che conoscere i vari linguaggi di programmazione può aprire davvero tantissime porte e può dare tantissime possibilità in settori che magari non avresti neanche pensato e che non conosci.
Di cosa vorrei parlarti?
- Sviluppo front-end e back-end. Considera che lo sviluppo front-end e back-end è l’area più richiesta nel mercato del lavoro nel mondo ma anche in Italia.
- Database, di quello quindi che sono le tecnologie e i linguaggi
- Sviluppo di software
- Gaming e sviluppo di videogames
- Sviluppo mobile, di cui c’è davvero tantissimo di cui parlare. Qua ci girano attorno tantissime tecnologie e tantissimo mercato.
- Automazione, robotica e Arduino, seppur in maniera limitata, considera che questo non è il mio settore specifico, però qualche consiglio te lo posso dare dal momento che conosco e mi confronto con persone che lavorano in questo ambito.
- Data analysis, Data Scientist e Business intelligence
- Machine Learning, un trend in rapida crescita, soprattutto negli ultimi anni quindi quando qualcosa è in crescita vuol dire che si alzano le richieste di lavoro quindi può essere interessante
- Cloud, DevOps, Sicurezza e Blockchain. Parleremo anche di tanti altri argomenti, come ad esempio il Cloud, la l'enorme ambito della sicurezza informatica, la figura del DevOps che si è sviluppata negli ultimi anni e le blockchain (un argomento un po’ particolare).
- Ed infine, la carta Jolly. Ti consiglio di leggere questo articolo soltanto alla fine di tutta la serie e soltanto se all’interno della serie stessa non sei riuscito a trovare un ambito di tuo interesse o comunque vicino a quelle che sono le tue competenze. Quindi leggi questo articolo soltanto se:
- Hai già delle competenze, magari perché hai già fatto un lavoro da anni in un settore totalmente lontano dalla programmazione e dall’informatica e non sei riuscito a trovare in nessun modo un settore di questi che ti ho elencato che si avvicina a quelle che sono le tue competenze
- Hai seguito un percorso accademico e anche in questo caso non sei riuscito a trovare un settore di interesse o comunque che si avvicina a quelle che sono le tue competenze.
Se rientri in uno di questi due casi leggi l’articolo della carta Jolly.
Non abbiamo finito. Prima di iniziare voglio approfondire ancora 3 cose importanti.
Linguaggio + basi di programmazione
Molto spesso i principianti fraintendono e uniscono questi due concetti. Per me è una cosa importantissima, i principianti infatti credono che conoscere un linguaggio di programmazione li renda dei programmatori. Ti assicuro che non è così! Se tu sei agli inizi, ti consiglio fortemente di impegnarti per acquisire le basi della programmazione. Vuol dire quindi acquisire un determinato metodo di ragionamento, pensare da programmatore, approcciarti ai problemi come un programmatore. Una volta che tu avrai acquisito queste competenze, queste basi, ti rimarranno in mente a prescindere dal linguaggio che andrai a studiare, a prescindere dal settore effettivamente in cui deciderai di specializzarti. Nel corso Java mi sono focalizzato molto su questo punto, cerco di insegnarlo il più possibile e di trasmetterlo ai miei studenti. Una volta che tu hai acquisito queste basi slegate dal linguaggio di programmazione, sarà molto più semplice passare ai vari linguaggi di programmazione.
Concetto di nicchia
Cosa intendiamo per Nicchia? Innanzitutto non c’entra niente con la programmazione, è un concetto che deriva dall’economia e l’ho studiato quando mi sono messo a specializzarmi in Digital marketing. Ma ti assicuro che questo concetto di nicchia ti può aiutare davvero tantissimo a velocizzare quello che è il tuo percorso. Ti può aiutare a trovare lavoro facilmente o a intraprendere la carriera da freelancer e di conseguenza ti può aiutare a trovare più clienti, a trovare i clienti che spendono di più per te. Cerchiamo quindi di capire che cosa si intende per nicchia e soprattutto come possiamo applicare concetto di nicchia anche nella programmazione con qualche esempio.
Prima di tutto, che cos’è una nicchia di mercato?
Essenzialmente è una parte di mercato che non è ancora stata raggiunta dalla concorrenza, oppure è stata raggiunta dalla concorrenza ma la concorrenza non ha soddisfatto appieno quella che è la domanda del mercato. Detto così può sembrare qualcosa di totalmente astruso e scollegato dalla programmazione, ma ti assicuro che non è così. Proviamo ad applicarlo più nel concreto. Quale potrà essere il nostro mercato? Vuoi farti assumere come programmatore? Come sviluppatore? Quale sarà il tuo mercato? Il tuo mercato saranno gli annunci che pubblicheranno le varie aziende.
E chi saranno i tuoi concorrenti? I tuoi concorrenti saranno quelle persone che come te si candidano agli annunci.
Ora proviamo ad applicare il concetto di nicchia a qualcosa di pratico. Prendiamo ad esempio il settore dello sviluppo di app ibride. Non so se lo sai ma qualche anno fa Google ha rilasciato una nuova tecnologia chiamata Flutter, una tecnologia abbastanza innovativa che serve a creare delle applicazioni per smartphone. Questa tecnologia la stanno iniziando ad utilizzare le aziende americane e la utilizzano pian piano anche le aziende europee e ovviamente, anche se lentamente, arriverà anche qui in Italia. Ciò vuol dire che nei prossimi anni le richieste di lavoro per professionisti Flutter, per persone specializzate in questa determinata tecnologia, aumenteranno sempre di più.
Si può dire che abbiamo una domanda di mercato, cioè aziende disposte ad assumere. Ora dobbiamo capire se ci sono dei concorrenti all’interno di questa nicchia di mercato, cioè quanti sono i programmatori nella tua zona, nella tua regione, nella tua nazione che sono bravi su Flutter e che quindi possono effettivamente candidarsi per questo tipo di annuncio di lavoro.
Tendenzialmente saranno pochi essendo una tecnologia così innovativa e così recente. Ovviamente ci saranno poche persone in grado di padroneggiare questa richiesta. Questo è l’esempio perfetto di nicchia.
Se tu ti specializzi, ti metti a seguire dei corsi ricevendo delle certificazioni e quant’altro riguardo Flutter, avrai enormi possibilità di cavalcare questa nicchia e di farti assumere rapidamente nel mercato. Questo perché abbiamo semplicemente applicato il concetto di nicchia, cioè siamo andati ad individuare una porzione di mercato, in cui la concorrenza non riesce a soddisfare completamente quella che è la domanda di mercato.
Lo stesso discorso lo possiamo ritrovare in una marea di aree diverse, basti pensare ai database NoSQL, possiamo fare esattamente lo stesso discorso. Se ti specializzi che ne so in un database grafico Neo4j, quanti saranno i professionisti italiani specializzati in Neo4j? Ora io precisamente non lo so, ma sono sicurissimo che sono molto meno rispetto ai professionisti specializzati in un database SQL a caso.
Hai visto come possiamo applicare lo stesso concetto di nicchia? Lo possiamo applicare allo sviluppo front-end con React o con Angular, lo possiamo applicare alle tecnologie di back-end, dove c’è davvero tantissimo da dire.
Una volta identificata la nicchia però bisogna anche identificare, o meglio bisogna capire, se quella nicchia è redditizia.
Cosa vuol dire valutare se la nicchia sia più o meno redditizia nel tuo caso specifico?
Dovresti valutare se effettivamente quegli annunci di lavoro si adattano a quelle che sono le tue esigenze. Supponiamo che tu voglia farti assumere come programmatore e trovi una tecnologia dove ci sono effettivamente degli annunci di lavoro, ma tutti gli annunci di lavoro che riesci a trovare sono di aziende londinesi e tu non hai nessuna intenzione di andare a Londra per lavorare. Quindi vuol dire che quella nicchia che tu hai identificato non è redditizia nel tuo caso specifico, non ha senso puntare su quel settore se non hai voglia di andare a Londra.
Oppure se vuoi fare il freelancer e ad esempio ti accorgi che una determinata tecnologia viene richiesta e utilizzata prevalentemente da persone che hanno poco budget a disposizione, se a te quell’area non ti interessa capirai perfettamente che quella non è la tua nicchia. Se tu non vuoi fare lavori a basso budget, ma ti vuoi concentrare su altre tipologie di lavoro, questo è il concetto di nicchia applicato alla programmazione.
Come introduzione può bastare, possiamo passare al prossimo articolo sul Frontend e Backand dove ti parlerò in dettaglio dei punti che ti ho elencato all’inizio!