Secondo , attualmente il data engineer è la professione con la crescita di domanda più rapida tra tutte le altre. Il data engineer gioca un ruolo critico all'interno dell'organizzazione: crea e mantiene pipelines e database che vengono utilizzati per elaborare, trasformare e memorizzare i dati. Quali competenze sono necessarie per i professionisti di questo settore? Esiste una differenza rispetto a quelle richieste ai data scientist? Di tutto ciò parlerò nel mio articolo.
Ho analizzato gli annunci di lavoro per la posizione di data engineer nel formato in cui si trovano a gennaio 2020, per capire quali abilità tecnologiche siano più richieste. Poi ho confrontato i risultati ottenuti con le statistiche sugli annunci per la posizione di data scientist, rivelando alcune interessanti differenze.
Senza ulteriori indugi, ecco le dieci tecnologie più frequentemente menzionate nei testi degli annunci di lavoro:

Menzioni delle tecnologie negli annunci per la posizione di data engineer nel 2020
Iniziamo.
Responsabilità del data engineer
Oggi, il lavoro svolto dai data engineer è di enorme importanza per le organizzazioni: sono proprio queste persone a occuparsi della memorizzazione delle informazioni e a trasformarle in un formato utile affinché altri dipendenti possano lavorarci. I data engineer costruiscono pipelines per facilitare l'acquisizione dei dati, sia in flusso che in pacchetti, da molteplici fonti. Successivamente, le pipelines eseguono operazioni di estrazione, trasformazione e caricamento (in altre parole, processi ETL), rendendo i dati più adatti per un utilizzo successivo. Dopo di ciò, i dati vengono inviati ad analisti e data scientist per ulteriori elaborazioni. Infine, i dati concludono il loro viaggio su dashboard informative, report e modelli per l'apprendimento automatico.
Ho cercato informazioni che potessero concludere quali tecnologie siano attualmente più richieste nel lavoro del data engineer.
Metodi
Ho raccolto informazioni da tre siti di ricerca lavoro — , e e ho osservato quali parole chiave compaiono in associazione con "data engineer" nei testi degli annunci destinati ai residenti negli Stati Uniti. Per questo compito ho utilizzato due librerie Python — e . Ho incluso nella lista delle parole chiave sia quelle già presenti nella precedente lista per l'analisi delle offerte di lavoro per la posizione di data scientist, sia quelle che ho selezionato manualmente leggendo le offerte di lavoro per data engineers. LinkedIn non è stato considerato tra le fonti, in quanto sono stato bannato dopo il mio precedente tentativo di raccogliere dati.
Per ogni parola chiave ho calcolato la percentuale di occorrenze sul numero totale di testi su ciascun sito singolarmente, e poi ho calcolato la media tra le tre fonti.
Risultati
Di seguito sono riportati trenta termini tecnici nel campo del data engineering con i tassi più elevati su tutti e tre i siti di annunci di lavoro.

Ecco gli stessi dati, ma presentati in forma di tabella:

Procediamo in ordine.
Panoramica dei risultati
Sia SQL che Python compaiono in più di due terzi delle offerte di lavoro analizzate. Queste due tecnologie sono quelle che vale la pena studiare per prime. – è un linguaggio di programmazione molto popolare, utilizzato per lavorare con i dati, creare siti web e scrivere script. sta per Structured Query Language (linguaggio di query strutturato); prevede uno standard, implementato da un gruppo di linguaggi, ed è utilizzato per estrarre dati da database relazionali. È stato introdotto molto tempo fa e si è dimostrato altamente affidabile.
Di Spark si parla in circa la metà delle offerte di lavoro. – è un "motore analitico unificato per l'elaborazione di big data con moduli integrati per lo streaming, SQL, machine learning e elaborazione grafica". È particolarmente popolare tra coloro che lavorano con grandi basi di dati.
AWS appare in circa il 45% dei testi delle offerte di lavoro. Si tratta di una piattaforma di calcolo cloud di Amazon; detiene la maggior parte del mercato tra tutte le piattaforme cloud.
Seguono Java e Hadoop – poco più del 40% a testa. – è un linguaggio ampiamente utilizzato e collaudato, che nel ha ottenuto il decimo posto tra i linguaggi che spaventano di più i programmatori. In contrapposizione, Python si è classificato secondo tra i linguaggi più amati. Java è gestito da Oracle e tutto ciò che c'è da sapere su di esso può essere compreso da questo screenshot della pagina ufficiale di gennaio 2020.

Sembra di essere stati su un viaggio nel tempo
utilizza il modello software MapReduce con cluster di server per grandi dati. Ora, questo modello sta venendo sempre più abbandonato.
Successivamente, vediamo Hive, Scala, Kafka e NoSQL – ognuna di queste tecnologie è menzionata in un quarto delle offerte di lavoro presentate. Apache Hive è un programma di archiviazione dati che "semplifica la lettura, la scrittura e la gestione di grandi insiemi di dati distribuiti, utilizzando SQL." è un linguaggio di programmazione ampiamente utilizzato nel lavoro con grandi dati. In particolare, Spark è stato sviluppato in Scala. Nella classifica delle lingue temute già menzionata, Scala occupa l'undicesima posizione. è una piattaforma distribuita per l'elaborazione di messaggi in streaming. È molto popolare come mezzo di trasferimento dati.
si contrappongono a SQL. Si differenziano per il fatto che non sono relazionali, non strutturate e presentano scalabilità orizzontale. NoSQL ha acquisito una certa popolarità, tuttavia il fervente interesse per questo approccio, fino alle profezie che avrebbe sostituito SQL come paradigma dominante per l'archiviazione, sembra ormai alle spalle.
Confronto con i termini nelle offerte di lavoro per data scientist
Ecco trenta termini tecnologici più comuni tra i datori di lavoro nel campo della scienza dei dati. Questa lista l'ho ottenuta seguendo lo stesso metodo descritto sopra per l'ingegneria dei dati.

Riferimenti alle tecnologie nelle offerte di lavoro per data scientist nel 2020
Parlando del numero totale, rispetto all'insieme esaminato in precedenza, ci sono state il 28% di offerte di lavoro in più (12.013 contro 9.396). Vediamo quali tecnologie sono presenti nelle offerte di lavoro per data scientist meno frequentemente rispetto a quelle per data engineer.
Più popolari in data engineering
Nel grafico sottostante sono mostrati le parole chiave con una differenza media di valori superiore al 10% o inferiore al -10%.

Le maggiori differenze nella frequenza delle parole chiave tra data engineer e data scientist
La maggiore crescita si registra per AWS: in data engineering appare con una frequenza del 25% superiore rispetto a data science (circa il 45% e il 20% del totale delle offerte di lavoro rispettivamente). La differenza è significativa!
Ecco gli stessi dati in una presentazione leggermente diversa: nel grafico, i risultati per la stessa parola chiave nelle offerte di lavoro per data engineer e data scientist sono presentati fianco a fianco.

Le maggiori differenze nella frequenza delle parole chiave tra data engineer e data scientist
Ho notato il salto di visibilità più grande per Spark: gli ingegneri dei dati si trovano spesso a lavorare con grandi quantità di dati. è aumentato del 20%, quasi quattro volte rispetto ai risultati per le offerte di lavoro degli data scientist. La trasmissione dei dati è uno dei compiti chiave per un data engineer. Infine, il numero di menzioni è risultata superiore del 15% nel campo del data engineering per Java, NoSQL, Redshift, SQL e Hadoop.
Meno popolari nel data engineering
Ora diamo un'occhiata alle tecnologie che sono meno popolari nelle offerte di lavoro per i data engineer.
La flessione più drastica rispetto al campo della data science si è verificata per : qui era presente in circa il 56% delle offerte, mentre qui solo nel 17%. Impressionante. R è un linguaggio di programmazione apprezzato da scienziati e statistici, ed è anche all'ottavo posto nella classifica dei linguaggi più temuti.
è anche presente nelle offerte per la posizione di data engineer in modo significativamente meno frequente: la differenza è del 14%. SAS è un linguaggio proprietario progettato per lavorare con statistiche e dati. Un fatto interessante: stando ai risultati , recentemente ha perso molto terreno — più di qualsiasi altra tecnologia.
Richieste sia nel data engineering che nella data science
È importante notare che otto delle dieci prime posizioni nei due set coincidono. SQL, Python, Spark, AWS, Java, Hadoop, Hive e Scala sono entrati nella top ten sia per l'industria del data engineering che per la data science. Nella grafica qui sotto puoi vedere le quindici tecnologie più popolari richieste dai datori di lavoro per i data engineers, affiancate dai loro risultati nelle offerte per gli data scientists.

Raccomandazioni
Se desideri intraprendere una carriera nel data engineering, ti consiglio di padroneggiare le seguenti tecnologie, elencate in ordine di priorità approssimativa.
Studia SQL. Ti consiglio PostgreSQL, poiché è open source, molto popolare nella comunità e in fase di crescita. Puoi scoprire come utilizzare il linguaggio nel libro My Memorable SQL – la versione pilota è disponibile .
Padroneggia Python, anche se non a un livello molto avanzato. Il libro My Memorable Python è pensato proprio per i principianti. Può essere acquistato su , sia in formato elettronico che cartaceo, a tua scelta, oppure puoi scaricarlo in formato pdf o epub .
Non appena ti familiarizzi con Python, passa a pandas – la libreria Python utilizzata per la pulizia e l'elaborazione dei dati. Se intendi lavorare in un'azienda dove è richiesta la capacità di programmare in Python (e la maggior parte delle aziende lo richiede), puoi essere certo che la conoscenza di pandas sarà data per scontata. Sto attualmente preparando una guida introduttiva per lavorare con pandas – puoi , per non perdere il momento del rilascio.
Impara AWS. Se desideri diventare un data engineer, non puoi fare a meno di una piattaforma cloud, e AWS è la più popolare tra queste. I corsi di , mi sono stati molto utili quando studiavo , penso che abbiano anche buoni materiali su AWS.
Se hai già acquisito tutte queste competenze e desideri ulteriore crescita agli occhi dei datori di lavoro come data engineer, ti consiglio di aggiungere Apache Spark per lavorare con i big data. Anche se la mia ricerca sulle offerte di lavoro nel data science ha mostrato un calo di interesse, per i data engineer questo compare ancora in quasi ogni seconda offerta.
Infine,
Spero che questa panoramica delle tecnologie più richieste per i data engineer ti sia sembrata utile. Se sei curioso di sapere com'è la situazione con le offerte per gli analisti, leggi . Buona ingegneria!
Fonte: habr.com
