Vastavalt , data engineer on hetkel amet, mille nõudlus kasvab kiiremini kui teiste. Data engineer mängib organisatsioonides kriitilist rolli - loob ja hoiab töökorras andmepipe ja andmebaase, mida kasutatakse andmete töötlemiseks, transformeerimiseks ja salvestamiseks. Milliseid oskusi on selle ametikoha esindajatel kõige rohkem vaja? Kas nimekiri erineb sellest, mida nõutakse data scientistidelt? Kõike seda saate lugeda minu artiklist.
Analüüsisin data engineer'i ametikoha pakkumisi sellisel kujul, nagu need on jaanuaris 2020, et mõista, millised tehnoloogilised oskused on kõige populaarsemad. Seejärel võrreldasin saadud tulemusi data scientist'i ametikoha pakkumistega - see näitas mõningaid huvitavaid erinevusi.
Läheme ilma pikkade eessõnadeta edasi - siin on kümme tehnoloogiat, mida mainitakse ametipakkumistes kõige sagedamini:

Tehnoloogiate mainimised data engineer'i ametikohtadel 2020. aastal
Hakkame mõtlema.
Data engineer'i kohustused
Tänapäeval on data engineer'ite töö organisatsioonides äärmiselt oluline - need inimesed vastutavad informatsiooni salvestamise eest ja muudavad selle selliseks, et teised töötajad saaksid sellega töötada. Data engineer'id loonud andmepipe, et korraldada andmete hankimist paljusid allikaid, kas voolu- või partiiandmetena. Edasi toimetavad pipe teevad andmete väljavõtmise, transformeerimise ja laadimise operatsioone (teisisõnu ETL-protsessid), muutes andmed edasiseks kasutamiseks sobivamaks. Seejärel edastatakse andmed analüütikutele ja data scientist'idele sügavamaks töötlemiseks. Lõpuks jõuavad andmed oma teekonnal info paneelidele, aruannetesse ja masinõppe mudelitesse.
Otsisin teavet, mis võimaldaks järeldada, millised tehnoloogiad on data engineer'i töös hetkel kõige nõutumad.
Meetodid
Kogusin teavet kolmest tööotsingu saidist - , ja ja vaatasin, milliseid märksõnu koostatakse koos «data engineer» ametikohtadega USA elanikud. Selleks kasutasin kahte Python'i raamatukogu - ja . Kaasa arvesse võetud märksõnade hulka kuulusid nii need, mis olid varasemas loendis andmeanalüütiku ametikoha analüüsi jaoks, kui ka need, mille valisin käsitsi, lugedes andmeinseneride ametipakkumisi. LinkedIn ei olnud ühegi allikana, kuna mind on seal pärast eelmisi andmete kogumise katseid blokeeritud.
Iga märksõna puhul arvutasin, kui suur protsent vastab kõigi tekstide koguarvule igal saidil eraldi ja seejärel arvutasin kolme allika keskmise.
tulemused näitasid ainult nelja ebaolulise koodibloki kattuvust, mis olid tingitud POSIX ja ANSI C nõuetest.
Allpool on esitatud kolmkümmend tehnilist terminit andmeinseneri valdkonnast, millel on kõige kõrgemad näitajad kõigil kolmel ametipakkumiste saidil.

Siin on samad numbrid, kuid esitatud tabelina:

Liigume edasi.
Tulemuste ülevaade
Nii SQL kui ka Python esinevad enam kui kahes kolmandikus kaalutud ametipakkumistes. Just neid kaht tehnoloogiat on mõistlik kõigepealt õppida. – väga populaarne programmeerimiskeel, mida kasutatakse andmete töötlemiseks, veebisaitide loomiseks ja skriptide kirjutamiseks. tähendab struktureeritud päringute keelt; see tähendab standardit, mida rakendab hulk keeli, ja seda kasutatakse andmete väljavõtmiseks suheline andmebaasidest. See on juba ammu olemas ja on tõestanud oma suure vastupidavusega.
Spark'i mainitakse umbes pooltes ametipakkumistes. – see on "ühtne analüüsimootor suurte andmete töötlemiseks, millel on sisseehitatud moodulid voogedastamiseks, SQL-iks, masinõppeks ja graafide töötlemiseks". See on eriti populaarne nende seas, kes töötavad suurte andmebaasidega.
AWS esindab umbes 45% ametipakkumiste tekstidest. See on Amazoni pilveteenuste platvorm; sellel on suurim turuosa kõigi pilveplatvormide seas.
Järgnevad Java ja Hadoop – veidi üle 40% kumbki. – laialdaselt levinud, lahingutes tõestatud keel, mis oli kümnendal kohal keelte seas, mis tekitavad programmeerijates õudust. Vastupidiselt sellele oli Python teisel kohal keelte seas, mis on kõige armastatumad. Java keelt juhib Oracle ja kõik, mida selle kohta teadma peab, on võimalik mõista selle ametliku lehe ekraanipildist jaanuarist 2020.

Justkui oleksin sõitnud ajamasinaga
kasutab MapReduce tarkvaramudelit serveriklastritega suurte andmete jaoks. Praegu hakatakse sellest mudelist üha enam loobuma.
Edasi näeme Hive'i, Scala, Kafka ja NoSQL – iga tehnoloogia mainitakse veerandi esitatud töökuulutustes. Apache Hive on andmehoidla programm, mis "lihtsustab suurte andmekogumite lugemist, kirjutamist ja haldamist jaotatud hoidlates, kasutades SQL-i." on programmeerimiskeel, mida kasutatakse aktiivselt suurte andmete töötlemisel. Eelkõige loodi Spark Scala-keeles. Mainitud hirmuäratavate keelte edetabelis on Scala üheteistkümnendal kohal. on jaotatud platvorm voogedastuste töötlemiseks. See on väga populaarne andmevoogude edastamise vahendina.
seavad end vastu SQL-ile. Need erinevad selle poolest, et nad ei ole relaatsioonilised, ei ole struktureeritud ja omavad horisontaalset skaleeritavust. NoSQL on saavutanud teatava populaarsuse, kuid selle lähenemise vastuoluline vaimustus, sealhulgas ennustused, et see asendab SQL-i kui domineerivat salvestusparadigmat, tundub olevat möödas.
Võrdlus terminitega, mis esinevad data scientist'i töökuulutustes
Siin on kolmkümmend tehnoloogiat, mis on tööandjate seas data science'i valdkonnas kõige levinumad. Selle nimekirja sain sama meetodi abil, mida kirjeldasin ülal data engineering'i jaoks.

Töötlemistehnoloogiate mainimised data scientist töökuulutustes 2020. aastal
Üldiselt on töökuulutusi võrreldes varasema komplektiga rohkem 28% (12,013 võrreldes 9,396). Vaatame, milliseid tehnolooge esineb data scientist'i töökuulutustes harvemini kui data engineer'i omad.
Rohkem populaarsed data engineering'is
Allpool oleval graafikul on näidatud märksõnad, mille keskmine erinevus väärtustes on üle 10% või vähem kui -10%.

Suurimad erinevused märksõnade sageduses data engineer'i ja data scientist'i vahel
Kõige olulisemat kasvu näitab AWS: data engineering'is esineb see 25% sagedamini kui data science'is (umbes 45% ja 20% koguarvust töökuulutustes vastavalt). Erinevus on märgatav!
Siin on samad andmed veidi teistsuguses esituses – graafikul on sama märksõna tulemused data engineer'i ja data scientist'i töökuulutustes kõrvuti.

Suurimad erinevused märksõnade sageduses data engineer'i ja data scientist'i vahel
Järgmine suur hüpe, mida ma märkasin, oli Sparkis – data engineer peab sageli töötama suurte andmete kallal. tõusis samuti 20%, mis tähendab peaaegu neljakordset suurenemist võrreldes data scientist'i ametikohtadega. Andmete edastamine on üks peamisi data engineer'i ülesandeid. Lõpuks oli mainimiste arv Java, NoSQL, Redshift, SQL ja Hadoop valdkonnas data engineeringus 15% suurem.
Muutuv populaarsus data engineeringus
Vaadakem nüüd, millised tehnoloogiad on data engineer'i ametikohtades vähem populaarsed.
Kõige järsem langus võrreldes data science'i valdkonnaga toimus : seal esines see umbes 56% ametikohtadest, siin – ainult 17%. Muljetavaldav. R on programmeerimiskeel, mida eelistavad teadlased ja statistikud ning see on ka kohtunud hirmuäratavate keelte edetabelis kahel kohal.
esineb data engineer'i ametikohtades tunduvalt harvemini – vahe on 14%. SAS on patenteeritud keel, mis on mõeldud statistika ja andmetega töötamiseks. Huvi pakkub see, et minu uurimuse tulemuste põhjal , on see viimasel ajal tugevalt kaotanud positsioone – rohkem kui ükski teine tehnoloogia.
Nõutud nii data engineeringus kui ka data science'is
On oluline märkida, et kahe andmestiku top kümnes kohas kattuvad kaheksast kümnest. SQL, Python, Spark, AWS, Java, Hadoop, Hive ja Scala kuuluvad kümnesse nii data engineeringu kui ka data science'i valdkonnas. Alloleval grafiikul näete viisteist kõige populaarsemat tehnoloogiat data engineer'ite tööandjate seas, koos nende näitajate ja data scientist'ide ametikohtadega.

Soovitused
Kui soovite tegutseda data engineeringus, soovitaksin teil õppida järgmisi tehnoloogiaid – loetlen neid ligikaudse prioriteedi järjekorras.
Uurige SQLi. Soovitan teil PostgreSQL'i, kuna sellel on avatud lähtekood, suur populaarsus kogukonnas ja see on kasvufaasis. Kuidas keelt kasutada, saate teada raamatust My Memorable SQL – selle prooviversioon on saadaval .
Valige Python, isegi mitte kõige tipptasemekamalt. Raamat My Memorable Python on mõeldud just algajatele. Seda saab osta , elektroonilise koopia või füüsilise, teie valik, või alla laadida pdf või epub formaadis .
Kui olete Pythoniga tuttav, minge edasi pandasisse – Python'i teeki, mida kasutatakse andmete puhastamiseks ja töötlemiseks. Kui teie eesmärk on töötada ettevõttes, kus on vajalik Python'i oskus (ja neid on enamus), võite kindel olla, et pandas'e tundmine eeldatakse automaatselt. Ma lõpetan praegu sissejuhatavat juhendit pandas'e kasutamiseks – võite , et mitte jääda ilma selle väljaandmisest.
Valige AWS. Kui soovite saada andmeinseneriks, ei saa te ilma pilveteenustega hakkama, ja AWS on neist kõige populaarsem. Mina leidsin, et kursused , kui õppisin , usun, et ka AWS-i kohta on neil head materjalid.
Kui olete juba kogu selle loendi selgeks saanud ja soovite veelgi oma väärtust tööandjate silmis tõsta kui andmeinsener, soovitan lisada Apache Spark'i suurandmete töötlemiseks. Kuigi minu uurimus andmeanalüütikute töökohtade kohta näitas huvi langust, ilmub see andmeinseneride seas siiski peaaegu igas teises kuulutuses.
Lõpetuseks
Loodan, et see ülevaade kõige nõutumatest tehnoloogiatest andmeinseneride jaoks oli teile kasulik. Kui olete huvitatud andmeanalüütikute töövõimalustest, lugege . Edu katsetamisel!
Allikas: habr.com
