Su forte richiesta, DataCamp si sta preparando a creare un percorso di Data Engineering. Come per molti termini nell’universo in continua espansione della Data Science, c’è molta ambiguità attorno alla definizione di “Data Engineering”. Alcuni Data Engineer si occupano molto di report e dashboard. Alcuni trascorrono la maggior parte del tempo a lavorare su pipeline di dati. Altri prendono codice Python scritto dai Data Scientist e lo ottimizzano per eseguirlo in Java o C.
Per avviare la creazione dei corsi, dobbiamo scegliere un’unica definizione di “Data Engineer” da cui partire. Dopo molte riflessioni e considerazioni, abbiamo scelto di parafrasare il programma televisivo americano “Law and Order”:
Data Engineer vs Data Analyst vs Data Scientist
Nell’universo della Data Science, i dati sono rappresentati da tre professioni separate ma ugualmente importanti:
- I Data Engineer, che usano linguaggi di programmazione per garantire un accesso ai dati e ai database pulito, affidabile e performante
- I Data Analyst, che usano linguaggi di programmazione, fogli di calcolo e strumenti di business intelligence per descrivere e categorizzare i dati esistenti
- I Data Scientist, che usano algoritmi per prevedere i dati futuri sulla base delle informazioni esistenti
Esempi
Per esempio, immagina che un’azienda venda molti tipi diversi di divani sul proprio sito web. Ogni volta che un visitatore del sito clicca su un determinato divano, viene creato un nuovo dato. Un Data Engineer definirebbe come raccogliere questi dati, quali metadati associare a ogni evento di clic e come archiviare i dati in un formato facilmente accessibile. Un Data Analyst creerebbe visualizzazioni per aiutare vendite e marketing a monitorare chi acquista ogni divano e quanto sta guadagnando l’azienda. Un Data Scientist prenderebbe i dati su quali clienti hanno acquistato ciascun divano e li userebbe per prevedere il divano perfetto per ogni nuovo visitatore del sito.
Che cos’è un data engineer?
Per molte organizzazioni, i data engineer sono i primi assunti in un team dati. Prima che i dati raccolti possano essere analizzati e sfruttati con metodi predittivi, devono essere organizzati e puliti. I Data Engineer avviano questo processo creando un elenco di quali dati sono archiviati, chiamato schema dei dati. Successivamente, devono scegliere una posizione affidabile e facilmente accessibile, chiamata data warehouse, in cui archiviare i dati. Esempi di sistemi di data warehousing includono Amazon Redshift o Google Cloud. Infine, i Data Engineer creano processi ETL (Extract, Transform and Load) per assicurarsi che i dati finiscano nel data warehouse.
Man mano che un’organizzazione cresce, i Data Engineer sono responsabili di integrare nuove fonti dati nell’ecosistema dei dati e di inviare i dati archiviati a diversi strumenti di analisi. Quando il data warehouse diventa molto grande, i Data Engineer devono trovare nuovi modi per rendere le analisi performanti, ad esempio parallelizzando l’analisi o creando sottoinsiemi più piccoli per query veloci.
La relazione tra le tre professioni
All’interno dell’universo della Data Science, c’è sempre sovrapposizione tra le tre professioni. I Data Engineer sono spesso responsabili di semplici progetti di Data Analysis o della trasformazione di algoritmi scritti dai Data Scientist in formati più robusti che possano essere eseguiti in parallelo. I Data Analyst e i Data Scientist devono imparare competenze di base di Data Engineering, soprattutto se lavorano in una startup nelle prime fasi in cui le risorse di engineering sono scarse.
Impara il data engineering con DataCamp!
In DataCamp siamo entusiasti di ampliare la nostra offerta di corsi di Data Engineering. Sappiamo cosa vogliamo insegnare e stiamo iniziando a coinvolgere docenti per progettare questi corsi. Se ti interessa, dai un’occhiata alla nostra candidatura e all’elenco dei corsi che stiamo attualmente dando la priorità.

