Voglio diventare … Data and Software Engineer
Il Data and Software Engineer è un mestiere piuttosto complesso: un po’ analista, un quarto progettista, un altro quarto informatico, un altro po’ statista.. insomma, le competenze sono trasversali.
Questa settimana Andrea Guzzo ci racconterà il suo punto di vista del suo lavoro in Moxoff, e non solo!
Descriviti in 100 parole
Ciao! Sono Andrea Guzzo e sono un Computer Scientist, nel lavoro attualmente ricopro il ruolo di Data & Software Engineer in Moxoff. Mi occupo principalmente di portare in produzione, ingegnerizzare e far funzionare modelli che spaziano dalla Data Science alla matematica applicata.
Nel tempo libero faccio parte di alcune community, sono uno degli organizzatori di PythonBiellaGroup, TedX Busto Arsizio e MilanoR (Erum2020).
Per il resto: Videogames, musica e fantascienza sono le mie passioni (ovviamente) :)
In cosa consiste il ruolo di Data and Software Engineer?
Il Data & Software Engineer è una figura professionale simile ad un Data Engineer e può avere diverse connotazioni. Come spesso accade nel mondo dell’informatica le attività spaziano a seconda del tipo di organizzazione in cui si collabora, al tipo di azienda, alla sua grandezza, se realizza prodotti software e molto altro ancora…
Per come lo intendiamo in Moxoff un Data & Software Engineer è una persona con un background fortemente tecnico-informatico che si occupa di far funzionare e mettere in produzione ricerche, modelli, POC, analisi, dashboard. In pratica costruisce l’infrastruttura software (spesso di backend) e quella legata ai dati di un progetto.
Tipicamente lavoro in piccoli team autoconsistenti, in molti progetti sono accompagnato spesso da un Math Model Developer oppure da un Data Scientist che sono molto più verticali su modelli, statistiche, analisi e KPI.
In altri progetti più grandi invece mi capita di lavorare con altre figure come la mia perchè lo stack tecnologico è solitamente più ampio.
In Moxoff utilizziamo questa sinergia su tutti i nostri progetti che è fondamentale per portare in produzione e far funzionare i nostri progetti, che per per il 90% sono composti dall’insieme di: dati, modelli, equazioni, statistica e tanto codice.
Qual è la soft skill più importante che deve possedere un Data & Software Engineer?
Oltre alla pigrizia (che è un requisito fondamentale :) ) direi sicuramente tutto ciò che è legato al Problem Solving.
Spesso capita di affrontare problemi complicati, dati molto sporchi e variabili, modelli che non vogliono saperne di funzionare e tantissimi altri problemi, avere una buona skill di risoluzione di problemi, accompagnata da un buon pensiero critico, consente di essere flessibili, trovare la soluzione giusta al momento giusto ed evitare di sbattere (troppo) il muso sulle varie difficoltà che si possono incontrare durante il cammino.
È certamente importante anche la capacità di sapersi relazionare bene e con una buona intelligenza emotiva con le altre persone, in particolare con gli altri membri del team. Requisito fondamentale per portare al successo qualsiasi attività progettuale.
Ovviamente sono tutti aspetti che con l’esperienza, la formazione e la pratica è possibile migliorare e far crescere, ovviamente a fronte di un grande lavoro su se stessi.
La maggior parte di noi utilizza i social per parlare dei propri successi, ma la realtà è che siamo quel che siamo grazie al 90% dei nostri errori. Racconta il tuo più grande fallimento da quando lavori nel settore, che però ti ha reso ciò che sei.
Di errori ne ho commessi moltissimi e continuo a farne!
Più che essere i nostri errori a definire noi stessi direi che sono le risposte e le lezioni che riusciamo ad imparare dai nostri errori a costruire ciò che siamo e che saremo nel futuro.
Un episodio emblematico che ha profondamente cambiato la mia etica lavorativa e l’approccio con gli altri (in particolare con il cliente) è un’esperienza vissuta nel precedente impiego durante un grande progetto in Microsoft.
A causa di alcuni errori dovuti alla mia mancanza di conoscenza di alcuni aspetti tecnici, poca attitudine nell’attività che stavo svolgendo e impegno ho ricevuto una valutazione negativa da parte del cliente che ha comportato la mia esclusione dall’attività progettuale.
All’inizio ho subito moltissimo a livello personale questa decisione, ma con il tempo ho imparato dai miei sbagli e ora cerco sempre di essere al 100% all’inizio e durante una nuova sfida, approfondendo aspetti tecnici richiesti, con un atteggiamento propositivo e positivo, ma soprattutto cercando di non farmi coinvolgere troppo a livello emotivo e personale dalle varie situazioni che si vengono creare sul posto di lavoro.
Come fare per diventare un Data & Software Engineer?
Il mio è stato un percorso certamente variegato e mi sono trovato a fare questo lavoro guidato dalla passione e da una domanda: “ma è possibile che la maggior parte dei progetti legati al mondo dell’Intelligenza Artificiale rimanga spesso in fase di prototipo? Come mai non vanno in produzione?”.
All’epoca ero un Data Scientist e mi occupavo principalmente di modelli e analisi dati, ma visto il mio background fortemente informatico e la continua ricerca alla risposta a questa domanda alla fine mi sono trovato a fare questo mestiere.
Rispetto ad un Data Scientist quindi direi che la mia figura professionale ha delle competenze forti in ambito Computer Science simili a quelle di un Data Engineer, con un pizzico di conoscenza di modelli e di statistica, necessarie per affrontare i progetti più complessi.
Se proprio vogliamo classificarla potrebbe somigliare ad un MLOps Engineer :)
Infine le certificazioni certamente servono, ma penso che non definiscano un bravo programmatore o un esperto in un settore.
Quello che certamente mi ha aiutato è l’esperienza sul campo, fare errori trovando e proponendo soluzioni, lavorare su progetti sfidanti, farsi guidare da colleghi più esperti, collaborare su progetti open source e non ultimo frequentare community, eventi di settore, persone; scambiandosi idee, codice ed esperienze.
Parlando di successi, qual è il tuo prossimo obiettivo? Quale ruolo vorresti ricoprire entro i prossimi 3 anni?
Il mio prossimo obiettivo personale è quello di lavorare (sia dal punto di vista tecnico che umano) per diventare un buon team leader tecnico, cercando di acquisire una buona conoscenza degli strumenti e tecnologie attualmente sul mercato in modo da definire con efficacia, in base alle richieste e agli obiettivi progettuali, delle soluzioni valide e funzionali.
Una specie di Architetto Software che sappia anche coordinare un gruppo di lavoro nella costruzione dell’architettura disegnata.
Una sfida certamente ambiziosa, ma non per questo meno stimolante :)
Conosci il tema gender gap in ambito STEM? Se sì, cosa puoi fare nel tuo piccolo per combattere questo problema?
Eccome! Vengo da una percorso universitario che per il 90% (se non di più) era a frequentazione maschile.
È un problema estremamente complesso e molto sfaccettato, dal mio piccolo punto di vista cerco, assieme alla nostra community PythonBiellaGroup, di diffondere la cultura di python come linguaggio di programmazione, dell’open source e spiegando cosa vuol dire essere un informatico nel 2021.
Ci piacerebbe moltissimo andare nelle scuole a parlare con i ragazzi spiegando come funziona il nostro mondo, ma è sempre molto difficile riuscire a trovare spazi di collaborazione.
Credo e penso che questo sia un problema molto serio che va affrontato a partire dalla giovane età a partire dalla scuola, creando sinergie con varie community, con il mondo associativo, esperti di settore, università e ricercatori, in modo da avvicinare le ragazze alle discipline scientifiche suscitando curiosità e presentando il mondo in cui viviamo per quello che è davvero.
Contatti
- Linkedin: https://www.linkedin.com/in/andreaguzzo/
- GitHub: https://github.com/JeyDi