Le competenze più richieste nella professione di ingegnere dei dati

Secondo statistiche 2019, l'ingegnere dei dati è attualmente una professione la cui domanda sta crescendo più rapidamente di qualsiasi altra. Un ingegnere dei dati svolge un ruolo fondamentale in un'organizzazione: crea e mantiene pipeline e database utilizzati per elaborare, trasformare e archiviare i dati. Di quali competenze hanno bisogno innanzitutto i rappresentanti di questa professione? L’elenco è diverso da quello richiesto ai data scientist? Imparerai tutto questo dal mio articolo.

Ho analizzato i posti vacanti per la posizione di Data Engineer così come sono a gennaio 2020 per capire quali competenze tecnologiche sono più popolari. Poi ho confrontato i risultati con le statistiche sui posti vacanti per la posizione di data scientist e sono emerse alcune differenze interessanti.

Senza troppi preamboli, ecco le dieci tecnologie più citate negli annunci di lavoro:

Le competenze più richieste nella professione di ingegnere dei dati

Menzione delle tecnologie nei posti vacanti per la posizione di ingegnere dei dati nel 2020

Capiamo

Responsabilità di un ingegnere dei dati

Oggi, il lavoro svolto dagli ingegneri dei dati è di grande importanza per le organizzazioni: queste sono le persone responsabili della memorizzazione delle informazioni e della loro trasformazione in una forma tale che altri dipendenti possano lavorarci. Gli ingegneri dei dati creano pipeline per trasmettere in streaming o batch dati da più fonti. Le pipeline eseguono quindi operazioni di estrazione, trasformazione e caricamento (in altre parole, processi ETL), rendendo i dati più adatti per un ulteriore utilizzo. Successivamente, i dati vengono inviati ad analisti e data scientist per un'elaborazione più approfondita. Infine, i dati terminano il loro viaggio in dashboard, report e modelli di machine learning.

Stavo cercando informazioni che mi permettessero di trarre una conclusione su quali tecnologie sono più richieste nel lavoro di un ingegnere dei dati al momento.

Методы

Ho raccolto informazioni da tre siti di ricerca di lavoro − SimplyHired, Infatti и Mostro e ho esaminato quali parole chiave sono state trovate in combinazione con “data engineer” nei testi delle offerte di lavoro destinate ai residenti negli Stati Uniti. Per questo compito ho utilizzato due librerie Python − Richieste и Bella zuppa. Tra le parole chiave ho incluso sia quelle incluse nell'elenco precedente per l'analisi dei posti vacanti per la posizione di data scientist, sia quelle che ho selezionato manualmente durante la lettura delle offerte di lavoro per data engineer. LinkedIn non figurava nell'elenco delle fonti perché sono stato bannato lì dopo il mio ultimo tentativo di raccogliere dati.

Per ogni parola chiave ho calcolato separatamente la percentuale di visite sul numero totale di testi su ciascun sito, quindi ho calcolato la media per le tre fonti.

Giudizio

Di seguito sono riportati i trenta termini di ingegneria dei dati tecnici con i punteggi più alti in tutti e tre i siti di lavoro.

Le competenze più richieste nella professione di ingegnere dei dati

Ed ecco gli stessi numeri, ma presentati sotto forma di tabella:

Le competenze più richieste nella professione di ingegnere dei dati

Andiamo in ordine.

Panoramica dei risultati

Sia SQL che Python compaiono in più di due terzi delle offerte di lavoro esaminate. Sono queste due tecnologie che hanno senso studiare per prime. Python è un linguaggio di programmazione molto popolare utilizzato per lavorare con i dati, creare siti Web e scrivere script. SQL sta per Structured Query Language; si tratta di uno standard implementato da un gruppo di linguaggi e viene utilizzato per recuperare dati da database relazionali. È apparso molto tempo fa e ha dimostrato di essere altamente resistente.

Spark è menzionato in circa la metà dei posti vacanti. Apache Spark è un "motore di analisi dei big data unificato con moduli integrati per streaming, SQL, apprendimento automatico ed elaborazione di grafici". È particolarmente popolare tra coloro che lavorano con database di grandi dimensioni.

AWS appare in circa il 45% delle offerte di lavoro. È una piattaforma di cloud computing prodotta da Amazon; ha la quota di mercato maggiore tra tutte le piattaforme cloud.
Seguono Java e Hadoop: poco più del 40% per il fratello. Java è una lingua ampiamente parlata e collaudata in battaglia Sondaggio sugli sviluppatori Stack Overflow 2019 si è aggiudicato il decimo posto tra i linguaggi che provocano orrore tra i programmatori. Al contrario, Python era il secondo linguaggio più amato. Il linguaggio Java è gestito da Oracle e tutto quello che c'è da sapere al riguardo lo si capisce da questo screenshot della pagina ufficiale di gennaio 2020.

Le competenze più richieste nella professione di ingegnere dei dati

È come viaggiare in una macchina del tempo
Apache Hadoop utilizza il modello di programmazione MapReduce con cluster di server per big data. Ora questo modello viene sempre più abbandonato.

Poi vediamo Hive, Scala, Kafka e NoSQL: ciascuna di queste tecnologie è menzionata in un quarto dei posti vacanti presentati. Apache Hive è un software di data warehouse che "semplifica la lettura, la scrittura e la gestione di set di dati di grandi dimensioni che risiedono in archivi distribuiti utilizzando SQL". Scala – un linguaggio di programmazione che viene utilizzato attivamente quando si lavora con i big data. In particolare, Spark è stato creato in Scala. Nella già citata classifica delle lingue temute, Scala si colloca all'undicesimo posto. Apache Kafka – una piattaforma distribuita per l'elaborazione dei messaggi in streaming. Molto popolare come mezzo per lo streaming di dati.

Database NoSQL si contrappongono a SQL. Differiscono in quanto non relazionali, non strutturati e scalabili orizzontalmente. NoSQL ha guadagnato una certa popolarità, ma la mania per questo approccio, al punto da far profezia che sostituirà SQL come paradigma di archiviazione dominante, sembra essere finita.

Confronto con i termini dei posti vacanti per data scientist

Ecco i trenta termini tecnologici più comuni tra i datori di lavoro del settore della scienza dei dati. Ho ottenuto questo elenco nello stesso modo descritto sopra per l'ingegneria dei dati.

Le competenze più richieste nella professione di ingegnere dei dati

Menzioni di tecnologia nei posti vacanti per la posizione di data scientist nel 2020

Se parliamo del numero totale, rispetto alle assunzioni precedentemente considerate, i posti vacanti sono aumentati del 28% (12 contro 013). Vediamo quali tecnologie sono meno comuni nei posti vacanti per data scientist che per data engineer.

Più popolare nell'ingegneria dei dati

Il grafico seguente mostra le parole chiave con una differenza media superiore al 10% o inferiore al -10%.

Le competenze più richieste nella professione di ingegnere dei dati

Le maggiori differenze nella frequenza delle parole chiave tra data engineer e data scientist

AWS mostra l'aumento più significativo: nell'ingegneria dei dati appare il 25% più regolarmente che nella scienza dei dati (rispettivamente circa il 45% e il 20% del numero totale di posti vacanti). La differenza è evidente!

Ecco gli stessi dati in una presentazione leggermente diversa: nel grafico, i risultati per la stessa parola chiave nei posti vacanti per la posizione di ingegnere dei dati e scienziato dei dati si trovano fianco a fianco.

Le competenze più richieste nella professione di ingegnere dei dati

Le maggiori differenze nella frequenza delle parole chiave tra data engineer e data scientist

Il successivo salto più grande che ho notato è stato in Spark: un ingegnere dei dati spesso deve lavorare con i big data. Kafka anch’essi aumentati del 20%, cioè quasi quattro volte rispetto al risultato relativo ai posti vacanti di data scientist. Il trasferimento dei dati è una delle responsabilità principali di un ingegnere dei dati. Infine, il numero di menzioni è aumentato del 15% nel campo dell'ingegneria dei dati per Java, NoSQL, Redshift, SQL e Hadoop.

Meno popolare nell'ingegneria dei dati

Ora vediamo quali tecnologie sono meno popolari nei posti vacanti di data engineer.
Il calo più marcato rispetto al settore della scienza dei dati si è verificato nel R: lì è apparso in circa il 56% dei posti vacanti, qui - solo nel 17%. Degno di nota. R è un linguaggio di programmazione preferito da scienziati e statistici ed è l'ottavo linguaggio più temuto al mondo.

SAS Anche i posti vacanti per la posizione di ingegnere informatico si riscontrano molto meno spesso: la differenza è del 14%. SAS è un linguaggio proprietario progettato per lavorare con statistiche e dati. Punto interessante: a giudicare dai risultati la mia ricerca sulle opportunità di lavoro per i data scientist, recentemente ha perso molto terreno, più di qualsiasi altra tecnologia.

Richiesto sia in ingegneria dei dati che in scienza dei dati

Va notato che otto delle prime dieci posizioni in entrambi i set sono le stesse. SQL, Python, Spark, AWS, Java, Hadoop, Hive e Scala sono entrati nella top ten sia per il settore dell'ingegneria dei dati che per quello della scienza dei dati. Nel grafico sottostante puoi vedere le quindici tecnologie più popolari tra i datori di lavoro di data scientist e accanto a queste c'è il tasso di posti vacanti per data scientist.

Le competenze più richieste nella professione di ingegnere dei dati

Raccomandazioni

Se vuoi entrare nell'ingegneria dei dati, ti consiglierei di padroneggiare le seguenti tecnologie: le elenco in ordine di priorità approssimativa.

Impara l'SQL. Io propendo per PostgreSQL perché è open source, molto popolare nella comunità ed è in una fase di crescita. Puoi imparare come utilizzare il linguaggio dal libro My Memorable SQL: la sua versione pilota è disponibile qui.

Padroneggia Python, anche se non al livello più hardcore. My Memorable Python è progettato specificamente per i principianti. Può essere acquistato su Amazon, copia elettronica o fisica, a tua scelta, oppure scaricalo in formato pdf o epub su questo sito.

Una volta acquisita familiarità con Python, passa a Pandas, una libreria Python utilizzata per la pulizia e l'elaborazione dei dati. Se intendi lavorare in un'azienda che richiede la capacità di scrivere in Python (e questa è la maggior parte di esse), puoi star certo che la conoscenza dei panda verrà presupposta per impostazione predefinita. Attualmente sto finendo una guida introduttiva su come lavorare con i panda: puoi Abbonarsiper non perdere il momento del rilascio.

Maestro AWS. Se vuoi diventare un ingegnere dei dati, non puoi fare a meno di una piattaforma cloud a portata di mano e AWS è la più popolare tra queste. I corsi mi hanno aiutato molto Linux Academyquando studiavo ingegneria dei dati su Google Cloud, penso che avranno anche buoni materiali su AWS.

Se hai già completato l'intero elenco e desideri crescere ulteriormente agli occhi dei datori di lavoro come ingegnere dei dati, suggerisco di aggiungere Apache Spark per lavorare con i big data. Sebbene la mia ricerca sui posti vacanti per scienziati dei dati abbia mostrato un calo di interesse, tra gli ingegneri dei dati appare ancora in quasi un posto vacante su due.

Infine

Spero che tu abbia trovato utile questa panoramica delle tecnologie più richieste dagli ingegneri dei dati. Se ti stai chiedendo come stanno andando i lavori di analista, leggi l'altro mio articolo. Buona ingegneria!

Fonte: habr.com

Aggiungi un commento