Piccolo Manaule di Sopravvivenza per Professionisti dell’I&CT

Notizia di oggi su ZeusNews:

“Alessandro Musumeci, direttore centrale dei Sistemi Informativi delle Ferrovie dello Stato, afferma: “La crescente carenza di competenze dentro e fuori l’azienda è una cosa che tocca constatare anche a noi. Stiamo assistendo a una sorta di banalizzazione dell’Information Technology: tutti pensano che le cose siano semplici e facili come chattare o aggiornare il proprio stato su Facebook”.

“E solo noi che siamo dietro a queste cose” – continua Musumeci – “sappiamo quanto sforzo richieda il lavoro dietro le quinte per fare che le cose appaiano semplici sulla scena dello spettacolo. È indubbio però il calo delle competenze scientifiche e delle competenze tecnologiche in generale. E sovente siamo costretti a rivolgerci all’estero perché le aziende italiane quelle competenze le hanno perse, non le hanno più”. ”

Da “ICT, la decadenza e una speranza”.

A questo punto, spero di fare cosa gradita riportando qui di seguito qualche consiglio su come sopravvivere come professionisti nel settore I&CT (Information and Communication Technology). Prima però, un paio di considerazioni di base.

Un paese low-tech

A differenza di quello che sostiene Musumeci, in Italia il problema non è la carenza di lavoratori (ingegneri) qualificati ma piuttosto la quasi totale assenza di industrie private e di enti pubblici in grado di dare lavoro a queste persone.

L’Italia, infatti, è un paese a bassa tecnologia (“low-tech”). Più esattamente, secondo le statistiche che ci riportano i giornali, è uno dei paesi a più bassa tecnologia dell’intero occidente. Messi peggio di noi in Europa ci sono solo Grecia e Portogallo. Persino la Polonia e la Repubblica Ceca possono ormai vantare un livello di industrializzazione migliore del nostro.

In Italia si producono scarpe, magliette, cannoli e tagliatelle, non server di rete, smartphone o astronavi. Da secoli, la tipologia di lavoratore più richiesta in Italia è il cameriere (tant’è vero che importiamo camerieri dall’est europeo). La domanda di ingegneri del software in Italia è più o meno la stessa che si ha in altri paesi simili, come l’Egitto e la Turchia, cioè praticamente nulla.

(Se ritenete che l’Italia NON sia un paese simile all’Egitto od alla Turchia, siete pregati di aprire gli occhi e/o di viaggiare un po’ più spesso per lavoro)

Potremmo star qui a discutere per giorni interi sulle responsabilità di questa situazione ma sarebbe tempo perso. Non importa se la colpa di questa desolazione sia da attribuirsi ai capitalisti avidi e malvagi od ai comunisti violenti ed irresponsabili. Resta il fatto che qui NON c’è lavoro per laureati e figure di alto livello professionale. C’è invece molto lavoro per cuochi, camerieri ed operai generici.

Di conseguenza, se volete restare a lavorare vicino a casa, fate le vostre considerazioni del caso. Diversamente, cercate di seguire tutti i corsi di lingue straniere che potete e preparate le valigie.

Una scuola-parcheggio

Nessuna attività didattica che abbia un minimo di ambizioni pratiche può prevedere più di quattro o cinque ore di lezione al giorno, per sei giorni al massimo alla settimana, per un massimo di nove o dieci mesi l’anno, soprattutto alle elementari ed alle medie. Questo perché dopo questa soglia il cervello si fulmina. Si è costretti a vivere per troppo tempo in un mondo artificiale, asettico e protetto, lontanissimo dal mondo reale. Non c’è più modo di mettere alla prova le nozioni acquisite a scuola nella vita reale, nel rapporto con gli altri e con il proprio ambiente. In altri termini: non c’è modo di crescere e di maturare per cui le nozioni acquisite a scuola non si trasformano mai in concetti, in “sensibilità”, “princìpi” o in “linee-guida” e restano per sempre sterili nozioni.

Come se questo non bastasse, il fatto di essere TUTTI costretti a spendere la quasi totalità del proprio tempo a scuola significa anche che ogni studente ha meno tempo per coltivare (a fondo) i propri interessi personali per cui, alla fine, ci si trova tutti quanti a saper fare le stesse (spesso inutili) cose, cioè quelle che vengono insegnate a scuola od all’università. Come potete facilmente capire, saper fare (soltanto) qualcosa (non necessariamente utile) che sanno fare anche tutti gli altri candidati, non è un modo molto efficace di affrontare la competizione (sempre più dura) per conquistare un posto di lavoro.

Per ragioni simili, nessun metodo di studio credibile può prevedere lezioni frontali che durino più di 40 minuti. Superata quella soglia l’attenzione crolla. Questo è un fatto talmente vero e talmente noto che esiste persino una scuola di pensiero nella formazione aziendale che si chiama “Pomodoro Technique” e che si basa proprio su questo presupposto.

In modo simile, nessun metodo didattico credibile può prevedere classi di più di 12 o 15 studenti. Soprattutto, nessun metodo didattico credibile può prevedere lezioni SOLO teoriche. Qualunque metodo didattico credibile prevede SEMPRE almeno un 40% di laboratori e di attività pratiche.

Confrontate tutto questo con ciò che vi ha fornito la scuola italiana e capirete facilmente perché, secondo le statistiche OCSE e rispetto agli studenti di altri paesi, noi italiani siamo dei “brocchi” irrecuperabili. A tutti gli effetti pratici, la scuola italiana è ridotta (da almeno 30 anni) ad un semplice parcheggio dove piazzare i figli mentre i genitori sono al lavoro. L’università, come noto, non è messa molto meglio.

Se volete imparare di più e meglio, come prima cosa dovreste chiedere MENO scuola con MENO gente e PIU’ laboratori. Non potendo ottenere questo risultato, dovreste imparare a difendervi dal drenaggio di energie che comporta questo modello scolastico/accademico fallimentare ed a dedicarvi voi, di vostra iniziativa, a cose più utili.

Le competenze tecniche di base

Ovviamente, per poter lavorare in questo settore, come in qualunque altro, è necessario possedere delle solide competenze di base. Già, ma quali sono queste competenze?

Beh, di una cosa potete star certi: NON sono quelle che vi vengono insegnate all’Università (od all’Istituto Tecnico). Innanzitutto, le tecnologie e le piattaforme che si studiano a scuola ed all’università vengono scelte prima per la loro “insegnabilità” e per la loro “didatticità” e solo in seguito in base alla loro reale utilità professionale. Inoltre, quando una tecnologia viene insegnata su larga scala, solitamente è già talmente vecchia che non è più un’opportunità professionale per nessun neolaureato.

Bisogna “stare sulla piazza”, leggere le riviste di settore, frequentare i convegni e parlare con gli altri professionisti per capire cosa chiede (o chiederà a breve) il mercato. E poi bisogna studiare…

Un piccolo, personalissimo consiglio: prendete dalla scuola e dall’università il poco che può darvi senza attribuire alla formazione scolastica ed accademica una importanza eccessiva. Cercate di passare (decorosamente) gli esami con il minor sforzo possibile e conservate le vostre energie ed il vostro tempo per mantenervi informati sullo stato del vostro settore e per studiare (nella pratica) le tecnologie e le discipline che quel settore richiede. Cercate di avere un atteggiamento attivo nella scelta delle cose da studiare e nell’attività pratica dello studio. Per quanto vi è possibile, cercate di studiare ciò di cui siete convinti, non ciò che vi viene detto di studiare.

Quasi certamente, vi sarà molto più utile conoscere bene l’inglese e/o conoscere bene EJB3.0 che prendere il massimo dei voti nell’esame di questa o quella materia universitaria (fermo restando che l’esame lo dovete passare in maniera decorosa, ovviamente).

L’inglese e l’italiano

Non è tecnicamente possibile lavorare nel settore I&CT (ed in nessun altro settore tecnico/scientifico) senza conoscere molto bene l’inglese. Quando dico “molto bene”, intendo dire che si deve conquistare almeno un “Cambridge First Certificate of English” o qualcosa di simile. In alternativa, si deve superare il famigerato TOEFL (“Test of English as a Foreign Language”), cioè l’esame che devono superare gli studenti stranieri per accedere alle università americane. In pratica, è necessario conoscere l’inglese (o l’americano) abbastanza bene da poter facilmente sostenere una conversazione tra amici al bar. Questo livello di conoscenza dell’inglese deve già essere presente quando si tenta di accedere al mondo del lavoro, cioè subito dopo la laurea.

Non è né impossibile né disumano ottenere questo risultato. Bisogna solo accettare psicologicamente il fatto che durante il liceo e/o l’università si devono seguire almeno tre o quattro corsi annuali consecutivi di lingua inglese, di almeno 60 ore ciascuno, presso una scuola privata come Berlitz. Meglio se questi corsi sono integrati da almeno uno o due corsi full-immersion di almeno due settimane ciascuno in UK o USA. Il costo complessivo di una preparazione linguistica di questo livello si aggira sui sette od ottomila euro (7 – 8.000 €). Sono soldi ben spesi, qualunque sia la vostra professione.

Non illudetevi neanche per un istante che sia sufficiente l’inglese che potete imparare a scuola. Se anche riusciste ad ottenere il massimo dei voti in tutti gli anni in cui potete studiare inglese dalle elementari all’università (cioè circa 20 anni ci corsi annuali) al massimo potreste raggiungere il livello che tecnicamente si chiama “assolutamente insoddisfacente”. Con quel livello di conoscenza dell’inglese potete (forse) leggere Mickey Mouse in lingua originale, non lavorare nell’I&CT.

Per imparare una lingua (qualunque lingua) è necessario un metodo di insegnamento che è praticamente l’opposto di quello che è possibile utilizzare in una scuola di tipo tradizionale: lezioni frequenti (almeno due alla settimana, meglio se tre o quattro), lunghe circa due ore l’una (metà teoria, metà esercizi) con al massimo 8 o 10 persone per classe, insegnante di madrelingua e forte supporto multimediale (film e audio). Nulla di tutto questo può essere fornito da una scuola tradizionale (pubblica o privata), nemmeno da quelle specializzate in lingue (Corrispondenti in Lingue Estere, Liceo Linguistico, etc.). Lasciate perdere ed iscrivetevi ad un normale corso Berlitz od InLingua. Rassegnatevi a trascorrere almeno una o due estati in UK o USA per seguire dei corsi full-immersion. Non c’è un altro modo di imparare DAVVERO una lingua straniera.

Forse è meno ovvio il fatto che per lavorare in Italia bisogna saper leggere, scrivere, parlare e capire prima di tutto la lingua ITALIANA. Questo NON riguarda solo gli immigrati. Purtroppo, una parte non irrilevante dei giovani LAUREATI (!!!!) tecnici ITALIANI che incontro per lavoro NON è in grado di capire cosa dice un articolo di un giornale appena più raffinato del Corriere dello Sport, non è in grado di scrivere correttamente in italiano una breve relazione e non è in grado di spiegare a voce ad altre persone come funziona un oggetto appena più complesso di un telecomando TV. Se credete che le statistiche OCSE/Pisa sulla conoscenza della lingua nazionale siano solo cazzate, vi invito ad informarvi meglio. Purtroppo sono lo specchio fedele di una triste realtà.

La conoscenza della lingua italiana NON è un problema di altre persone, ad esempio quelle che si iscrivono a Lingua e Letteratura Italiana all’Università. Questo è un VOSTRO problema, qualunque sia la vostra professione.

L’organizzazione del lavoro ed il Time management

“Saper lavorare” vuol dire anche “sapersi organizzare”. Nella vita personale e professionale, questo vuol dire saper gestire il proprio tempo (la propria agenda), i propri contatti (la propria rubrica), i propri compiti (la propria “to-do list”) e via dicendo. Esistono dei corsi e dei libri che spiegano come gestire questi aspetti della vita personale e professionale. Cercate di imparare queste tecniche prima di arrivare sul posto di lavoro. Non c’è modo migliore di farsi buttare fuori da un’azienda prima della fine del periodo di prova se non quello di dimostrarsi incapaci di organizzare il proprio lavoro.

Ad un livello un po’ più aziendale, “saper lavorare” vuol dire “sapere come è organizzata e come funziona un’azienda e sapersi inserire nei suoi processi produttivi”. Nessuna azienda che io conosca (e ne conosco parecchie) è disposta a trattare con un diplomato o laureato tecnico che non sia in possesso di queste conoscenze (che riguardano in modo specifico la sua professione) e che non sia in grado di inserirsi nei suoi processi produttivi SENZA bisogno di corsi aziendali, spiegazioni o tutoring. Queste competenze e capacità sono ciò che definisce il “tecnico” o “l’ingegnere” nell’industria. Non possono essere assenti.

Tra l’altro, uno dei compiti più tipici che vengono affidati ai laureati (di qualunque tipo) nell’industria è quello della gestione dei progetti. Com’è facile immaginare, si tratta di un’attività organizzativa che richiede una certa formazione teorica, una certa pratica ed un carattere particolarmente stabile. Non viene fornito nessuno di questi strumenti all’università per cui dovrete compensare da soli.

Come nel caso precedente, esistono dei testi su cui studiare questi temi. Studiateli. Non aspettate che qualcuno vi insegni queste cose perché tutti daranno per scontato che già le conosciate.

L’ingegneria del software

Forse non è del tutto ovvio il fatto che da un ingegnere del software ci si aspetti qualcosa di più del fatto che sappia programmare. Anche mio nipote, che ha 14 anni, sa programmare. Questo non lo rende certo adatto a lavorare nell’industria del software.

Da un ingegnere del software ci si aspetta che sappia concepire, progettare, capire e gestire delle complesse architetture software. In altri termini, NON basta saper programmare (magari bene) in Java (magari la vecchia 1.2) ma bisogna sapersi destreggiare BENE dentro EJB3.0, magari con qualche altro framework d’appoggio come Hibernate, Spring, Acegi o Wicket.

Può sembrare persino offensivo che debba sottolineare questo fatto ma… indovinate un po’ cosa succede, fin troppo spesso, quando ci si trova a gestire l’inserimento di un giovane laureato in un team di sviluppo…

Purtroppo, la preparazione tecnica che viene fornita dalle nostre università da almeno una decina d’anni a questa parte è piuttosto scarsa. Il livello di preparazione che è richiesto per conseguire la laurea è di conseguenza piuttosto basso per cui molti laureati (non tutti, per fortuna) si ritrovano con un titolo di laurea in mano e con l’illusione di saper fare qualcosa. Purtroppo, questa sensazione NON corrisponde alla verità.

Per raggiungere un livello di competenza davvero “professionale” è necessario aver partecipato almeno una volta nella vita ad un progetto reale della durata di almeno sei mesi (6 mesi, cioè mezzo anno, otto ore, 8, al giorno). Se non trovate un’azienda che vi faccia fare uno stage serissimo (e sono assolutamente certo che NON la troverete), unitevi ad un progetto Open Source o, meglio ancora, trovate un paio di colleghi/amici e lanciate un vostro progetto (non troppo piccolo).

In particolare, dovete imparare a lavorare in gruppo in rete, usando un sistema CVS decente (Subversion, Bazaar, Mercurial, GIT o ClearCase), facendo i test del caso (Junit o simili, Cobertura e roba simile), usando un ambiente di sviluppo decente (Eclipse, Netbeans, Visual Studio, etc.) e gestendo il bug fixing in modo professionale (Trac, Bugzilla, etc.). Magari, cercate di usare anche un sistema di integrazione continua (Hudson e simili) ed un sistema di gestione dei progetti (Maven e roba simile). Soprattutto, imparate a mettere nero su bianco le vostre idee con gli strumenti tipici dell’ingegneria del software (diagrammi UML e simili). Imparate a gestire il progetto con gli strumenti e le tecniche tipici del Project Management (diagrammi di Gantt, software come MS Project o Gnome Planner, etc.). Non è solo una questione di conoscere gli strumenti ma soprattutto di abituarsi a lavorare in gruppo “a tutto tondo”, in modo metodico e controllato, con la consapevolezza di cosa si sta facendo (visto come elemento di un processo molto più ampio).

Quando andate ad un’intervista di valutazione (“colloquio di lavoro”) lasciate a casa il diploma e la laurea e portate con voi il vostro laptop sul quale avete installato una versione funzionante del vostro progetto. Abbiate l’accortezza di portare con voi tutti i documenti di progetto (file UML e simili) ed assicuratevi di essere in grado di esporre ciò che avete fatto in modo chiaro e conciso in un italiano corretto e comprensibile.

Comunicazione e Promozione

Troppo spesso, mi càpita di incontrare giovani diplomati e/o laureati che si aspettano seriamente che una grande azienda si accorga di loro grazie a questa o quella banca dati (alma laurea…) e si decida ad assumerli sulla base del loro curriculum.

Non funziona così.

Le aziende frequentano pochissimo le banche dati e non assumono quasi mai (solo) sulla base del curriculum. In particolare, le aziende per cui sarebbe bello lavorare (perché pagano bene e/o forniscono un ambiente piacevole e stimolante) non ragionano quasi mai in questo modo. Queste aziende “pregiate” sono pregiate proprio perché sanno selezionare i candidati migliori e non lo fanno certo rovistando nei database su Internet e leggendo quattro pagine di CV.

Le aziende “pregiate” cercano i loro dipendenti tra i giovani diplomati e laureati che si mettono in mostra nel loro ambiente con i loro progetti subito dopo la laurea. Volete qualche esempio? Eccone un paio:

Andrea Lo Pumo di Netsukuku su Wired

Intervista a Stefano Mazzocchi di Cocoon

Impossibile? Disumano? No, tutt’altro. Se NON siete capitati nel settore I&CT per puro caso, di sicuro avete nel cassetto qualche idea e qualche progetto. Dovete solo prendere il coraggio a due mani e buttarvi nella realizzazione.

Soprattutto, è importante imparare a comunicare con gli altri addetti del settore, prendendo parte (come “speaker”) ai convegni, ai meeting e ad altre iniziative di settore. È importante imparare ad esporre le proprie idee e le proprie realizzazioni in modo chiaro e comprensibile (in italiano, l’inglese vi servirà in seguito).

È anche molto, molto importante imparare ad esporre e promuovere le proprie idee e le proprie realizzazioni attraverso il web, con un blog personale o con un project web site (NON con Facebook!!!).

La comunicazione (esposizione delle proprie idee, confronto con gli altri, etc.) e la promozione (“propaganda”, “pubblicità”) sono alla base del successo, sia nel commercio che in qualunque altra attività umana, per la semplice ragione che nessuno può comprare qualcosa che non conosce.

Nessuno può assumervi se non sa che esistete.

Business

Il lavoro di sviluppo software non è un’attività fine a sé stessa. Serve per realizzare un prodotto (software) od un servizio (una web application, di solito) che, a sua volta, serve per produrre SOLDI (“reddito”). Nessun imprenditore vi assumerà mai soltanto perché siete bravi a programmare. Quello che interessa il datore di lavoro è che siate bravi a produrre soldi attraverso il vostro lavoro di programmazione.

Se siete delle persone appena un po’ accorte, anche a voi dovrebbe interessare soprattutto che il vostro lavoro possa produrre un reddito. Potrebbe anche essere il vostro reddito, che voi stessi producete senza bisogno di un datore di lavoro.

Per questa ragione è importante che vi interessiate anche agli aspetti più strettamente imprenditoriali della vostra attività. Cosa aspetta il mercato? Che opportunità ci sono? Quali sono gli errori che hanno già commesso altri e che vanno evitati? Dove potete trovare dei soldi (finanziamenti) per avviare la vostra attività? Come si gestiscono i pagamenti? Cosa funziona una banca e cosa può fare per voi? Come si pagano le tasse? Come si reclutano dei collaboratori validi?

Più riuscite a mettervi nei panni di un imprenditore, più sarete in grado di dargli quello che cerca e quindi di farvi assumere. Ancora meglio, potreste imparare così bene da non avere più bisogno di un datore di lavoro. Guardate questi ragazzi, ad esempio:

http://www.d-vel.com/

Qualche anno fa lavoravano con me come collaboratori a contratto. Ora hanno la loro azienda e non hanno più bisogno di nessuno che paghi loro uno stipendio.

Prendersi cura di sé

Un ultima cosa: è importante restare lucidi mentre si cerca un lavoro e mentre si lavora sotto stress. Si deve evitare con la massima cura di cadere in depressione perché il lavoro non arriva o perché si è combinato qualche casino. Se vi presentate ad una intervista di selezione mentre siete depressi, sarete buttati fuori insieme alla spazzatura.

Per non cadere in depressione è importante fare in modo che la conquista del lavoro (od il lavoro, se già vi hanno assunto), non rappresenti la cosa più importante della vostra vita, quella da cui traete il vostro senso di adeguatezza e la vostra autostima. Dovete avere altre fonti di autostima a cui attingere quando le cose vanno male.

Per ottenere questo risultato, è importante che coltiviate numerosi altri interessi nella vita: gli amici, le sbronze, le donne, i motori, il calcio, quello che vi pare. In ogni caso, è importante che si tratti di interessi “forti”, che vi danno un senso di appartenenza e che vi forniscono autostima. Qualcosa a cui non sapreste rinunciare. Ad esempio, se partecipate come sbandieratori al palio della vostra contrada, ne ottenete un senso di appartenenza (le serate con gli amici) ed un senso di autostima (perché sapete sbandierare, cosa che molti altri non sanno fare). Lo stesso vale se seguite un corso di aikido (come fa Luca Sartoni) o se giocate a calcio a livello semi-professionale.

Insomma: prendetevi cura di voi stessi. Siete l’unica cosa che possedete davvero e siete l’unica persona su cui potete veramente contare.

Conclusioni

Spero di essere stato utile a qualcuno. Se avete commenti, c’è lo spazio apposito sottostante.

Alessandro Bottoni

Lascia un commento