Professione sempre più richiesta, specie dalle grandi aziende, il data engineer ha competenze specifiche e peculiarità che lo rendono assai importante per la gestione dei dati
Prima di parlare del Data engineer e comprendere l’essenza e l’importanza di questa figura professionale, è bene ricordare che ogni giorno si crea una mole enorme di dati (o Big data) un quantitativo in continua crescita. Dal 2010 al 2020, la quantità di dati creati, catturati, copiati e consumati nel mondo è aumentata da 1,2 trilioni di gigabyte a 59 trilioni di gigabyte, una crescita di quasi il 5.000%. I Big Data sono sempre più parte del nostro quotidiano e soprattutto sono fonte di business e pesano in maniera sensibile sull’economia mondiale. IDC stima che la percentuale del PIL mondiale è destinata ad essere digitalizzata entro il 2022. Tutto questo ha ricadute importanti nel mondo del lavoro: secondo Forrester, il 25% dei lavoratori saranno supportati direttamente o indirettamente da nuove forme di automazione entro il 2022. C’è, quindi, un grande bisogno di chi sappia gestire adeguatamente questi dati. Da qui l’importanza di professionisti dedicati. Già oggi, in Italia il 76% delle grandi aziende ha in organico Data Analyst, il 51% Data Engineer, il 49% Data Scientist, il 21% Data Visualization Expert (dati 2019, Osservatorio Big Data Analytics – School Management Politecnico di Milano) per un mercato, quello degli Analytics, che ha raggiunto un valore di 1,7 miliardi di euro, praticamente doppio rispetto al 2015.
Si tratta di professioni specifiche e oggi cercheremo di fare chiarezza su chi sia “l’ingegnere dei dati”, cosa faccia e perché è e sarà una figura sempre più importante in determinati settori industriali e del business.
Cosa fa un data engineer?
Il Data engineer è un professionista del mondo IT il cui compito è preparare i dati per usi analitici o operativi, garantendo la disponibilità dei dati, nonché la loro qualità e fruibilità a chi li utilizza per metterli al servizio del business.
Il suo lavoro consiste nel raccogliere correttamente e poi raffinare, analizzare, interpretare e valorizzare quantità consistenti di dati di elevata complessità, sempre più spesso Big Data, rendendoli disponibili in maniera efficace per le successive procedure decisionali.
La quantità di dati su cui lavora varia con le dimensioni dell’organizzazione aziendale per cui lavora: più grande è l’azienda, più complessa è l’architettura analitica e più numerosi saranno i dati di cui l’ingegnere sarà responsabile.
Questi ingegneri del software sono responsabili della costruzione di data pipeline per mettere insieme le informazioni da diversi sistemi di origine.
Infine, deve saper costruire, migliorare e progettare interi sistemi di controllo e di data analytics, garantendone la corretta composizione e la qualità delle fonti dalle quali provengono. Il controllo dei dati è fondamentale anche per assicurare a data scientist, data analyst e project manager, un utilizzo attendibile e correttamente verificato.
Le skills e le competenze necessarie
Come si può comprendere, quello del Data engineer è un ruolo assai delicato, perché le questioni cui attiene il mestiere comprendono: la progettazione di database; la conoscenza dei dati e la loro elaborazione; i linguaggi per descrivere i dati, definire l’accesso e manipolare i database; le strategie e i meccanismi di accesso ai dati, la sicurezza e il controllo dell’integrità; i servizi di ingegneria e i sistemi distribuiti.
Per questo devono essere esperti in linguaggi di programmazione come Java, Scala, Python, R, e SQL. Questi ultimi tre sono i più importanti utilizzati dai Data engineer. Anche la conoscenza dei sistemi operativi basati su Unix è importante.
Essi devono avere una buona comprensione degli strumenti ETL (Extract/Transform/Load), sigla che definisce il processo utilizzato per trasformare dati grezzi in informazioni fruibili per creare e gestire i lavori di integrazione dei dati. Queste competenze aiutano anche a fornire agli analisti di dati e agli utenti aziendali un accesso semplificato ai set di dati preparati.
Altrettanto importante è la comprensione del funzionamento di data warehouse e data lake, nonché i i database NoSQL e i sistemi Apache Spark, componenti sempre più comuni dei flussi di lavoro dei dati. Inoltre dovrebbero anche avere una conoscenza dei sistemi di database relazionali, come MySQL e PostgreSQL.
Altro punto importante nel loro bagaglio di competenze è la conoscenza delle piattaforme di business intelligence e la capacità di configurarle. Ciò è importante perché le piattaforme di BI possono stabilire connessioni tra data warehouse, data lake e altre fonti di dati.
Tra le skill del Data engineer vi è anche la conoscenza di metodi quali il Machine Learning per essere in grado di preparare i dati utili per le piattaforme specifiche. L’avvento l’evoluzione dei Big Data e la disponibilità di tool sempre più evoluti e performanti ha profondamente cambiato la natura del lavoro dei data engineer. Per questo devono avere competenze specifiche, anche per sapere come implementare gli algoritmi di ML e ricavarne intuizioni.
Per quanto riguarda il percorso di studi, il Data engineer ha una solida formazione universitaria, in ingegneria informatica. Oggi ci sono corsi di laurea magistrali dedicati al data engineering, e in generale I datori di lavoro richiedono generalmente una laurea in informatica, ingegneria o un campo correlato, e preferiscono anche candidati che abbiano già maturato un’esperienza pluriennale (3-5 anni) nel settore.
Quanto guadagna un data engineer
A fronte di queste competenze, si comprende bene che il data engineer è una figura professionale qualificata. Non solo: è particolarmente richiesta. Detto che il 51% delle grandi aziende italiane contemplano questa figura, questo professionista IT è sempre più ricercato a livello internazionale.
Lo stipendio annuo base medio di un data engineer in Italia, secondo quanto riporta Glassdoor, supera i 30mila euro. Ma le variazioni da contesto a contesto e da Paese a Paese mutano sensibilmente. La stesso Glassdoor riporta, per esempio per gli Stati Uniti, uno stipendio medio per Data Engineer pari a 112.000 dollari circa.
Data engineer vs data scientist: le differenze
I data engineer spesso lavorano come parte di un team di analisi insieme ai data scientist. Gli ingegneri forniscono i dati in formati utilizzabili ai data scientist che eseguono query e algoritmi sulle informazioni per applicazioni di analisi predittiva, apprendimento automatico e data mining. I Data engineer provvedono anche a garantire dati aggregati ai dirigenti e agli analisti aziendali e ad altri utenti finali in modo che possano analizzarli e applicare i risultati per migliorare le operazioni aziendali.
Mentre il data engineer si occupa della raccolta, dell’analisi e del data management, scopo invece del data scientist è la gestione dei big data che gli sono stati forniti e la capacità di trarne informazioni rilevanti.
Entrambe le figure sono importanti, anche se, secondo Michel Goetz, principal analyst di Forrester, non è proprio così. Come afferma nel blog della società, pur riconoscendo che la data science è un impegno di alto valore, «tuttavia, senza dati, la data science si trova a un punto morto. Ciò che rende i Data Scientist unici e ben remunerati è che ci si aspetta che sappiano gestire statistica e informatica. Invece, è sbagliato pensare di trovare qualcuno che sia competente sia nell’analitica che nei dati. Tuttavia, dove i Data Scientist non aiutano è l’attivazione dei dati e delle analisi nei nostri processi aziendali, applicazioni e sistemi». È qui che entrano in gioco i data enginer, abili a “manovrare” dati e analytics, sfruttare le strategie e i piani di investimento dei Data Architect. «Essi abilitano l’analitica e la data science. Adottano e attivano le politiche di governance dei dati. Si assicurano che i dati e gli investimenti analitici ottengano il loro pieno ritorno verticalmente e orizzontalmente».
È bene ricordare che tra le principali competenze dell’ingegnere dei dati c’è la sua conoscenza e la sua dedizione verso l’analisi mediante l’utilizzo di strumenti, dispositivi e grafici analitico-matematici. Non solo li utilizza, ma è capace anche di ottimizzarne l’uso, oltre che interpretarli e progettarli.
Dello stesso parere è Terence Shin, data scientist della società fintech canadese KOHO. In un suo articolo ha definito l’ingegneria dei dati “fondalmente più importante della data science” motivando così il suo parere: «Machine learning e Deep learning possono essere potenti, ma solo in circostanze molto speciali. A parte il fatto che ci deve essere una quantità sostanziale di dati e un uso pratico per ML e DL, le aziende hanno bisogno di soddisfare la gerarchia delle esigenze dei dati dal basso verso l’alto. Nello stesso modo in cui abbiamo bisogni fisici prima dei bisogni sociali, le aziende devono soddisfare diversi requisiti che generalmente rientrano nell’ambito dell’ingegneria dei dati. Per la data science, in particolare quando si parla di ML e DL, sono le ultime cose che contano. In poche parole, non ci può essere data science senza data engineering. Quest’ultima è la base per un’azienda di successo poggiata sui dati».