Prema , data engineer trenutno je profesija za kojom raste potražnja brže nego za bilo kojom drugom. Data engineer igra kritičnu ulogu unutar organizacija – stvara i održava radne tokove i baze podataka koje se koriste za obradu, transformaciju i pohranu podataka. Koje su vještine najpotrebnije predstavnicima ove profesije? Razlikuje li se popis od onoga što se traži od data scientists? O svemu tome saznat ćete iz mog članka.
Analizirao sam oglase za poziciju data engineer u obliku u kojem su se nalazili u siječnju 2020. godine, kako bih razumio koje tehnologije su najtraženije. Zatim sam usporedio dobivene rezultate sa statistikom o oglasima za pozicije data scientist – pri čemu su se pojavile zanimljive razlike.
Bez dugih uvoda – evo deset najčešće spominjanih tehnologija u oglasima za posao:

Spominjanje tehnologija u oglasima za poziciju data engineer u 2020. godini
Hajde da istražimo.
Obaveze data engineer-a
Danas je rad koji obavljaju data engineers od iznimne važnosti za organizacije – upravo ti ljudi su odgovorni za pohranu informacija i njihovo pripremanje u obliku koji omogućava drugim zaposlenicima rad s njima. Data engineers oblikuju radne tokove kako bi osigurali pristup podacima, bilo putem struje ili paketa, iz više izvora. Nakon toga radni tokovi provode operacije ekstrakcije, transformacije i učitavanja (drugim riječima, ETL procese), čineći podatke prikladnijima za daljnju upotrebu. Na kraju, podaci se predaju analitičarima i data scientists za dublju obradu. Na kraju, podaci završavaju svoje putovanje na informacijskim pločama, u izvještajima i modelima za strojno učenje.
Tražio sam informacije koje bi omogućile zaključak o tome koje su tehnologije trenutno najtraženije u radu data engineer-a.
Metode
Prikupljao sam informacije s tri web stranice za pretraživanje poslova — , i i proučavao koja se ključna riječ pojavljuje u kombinaciji s „data engineer” u oglasima za posao namijenjenim stanovnicima SAD-a. Za ovu zadaću koristio sam dvije Python biblioteke — i . Uključio sam ključne riječi kao one koje su bile u prethodnom popisu za analizu radnih mjesta za poziciju data scientist, kao i one koje sam ručno odabrao čitajući oglase za posao za data engineers. LinkedIn nije bio među izvorima jer su me tamo zabranili nakon prošlog pokušaja prikupljanja podataka.
Za svaku ključnu riječ izračunao sam postotak pojavnosti u odnosu na ukupan broj tekstova na svakoj od web stranica, a zatim izračunao prosječnu vrijednost za tri izvora.
Rezultati
Ispod su prikazane tri desetine tehničkih termina iz područja data engineering s najvišim postocima na sva tri web mjesta za posao.

A ovo su isti podaci, ali u obliku tablice:

Idemo redom.
Pregled rezultata
I SQL i Python pojavljuju se u više od dvije trećine razmatranih oglasa za posao. Upravo ove dvije tehnologije ima smisla učiti u prvom redu. – vrlo popularan programski jezik koji se koristi za rad s podacima, izradu web stranica i pisanje skripti. razlikuje se kao Structured Query Language (jezik strukturiranih upita); on predviđa standard proveden grupom jezika i koristi se za vađenje podataka iz relacijskih baza. Pojavio se davno i dokazao se visokom otpornošću.
O Sparku se govori u otprilike polovici oglasa za posao. – to je 'ujedinjeni analitički motor za obradu velikih podataka s ugrađenim modulima za strimanje, SQL, strojno učenje i obradu grafova'. Posebno je popularan među onima koji rade s bazama podataka velikih dimenzija.
AWS se pojavljuje u otprilike 45% oglasa za posao. To je platforma za oblačno računarstvo koju proizvodi Amazon; ima najveći tržišni udio među svim oblačnim platformama.
Sljedeći su Java i Hadoop – nešto više od 40% svaki. – široko rasprostranjen, iskušan jezik koji je u zauzeo deseto mjesto među jezicima koji izazivaju strah kod programera. Nasuprot tome, Python je bio drugi od jezika koje programeri najviše vole. Jezik Java kontrolira Oracle i sve što treba znati o njemu može se razumjeti iz ovog snimka zaslona s službene stranice od siječnja 2020. godine.

Kao da sam prošao kroz vrijeme
koristi MapReduce softverski model s klasterima poslužitelja za velike podatke. Ova se paradigma sve više napušta.
Dalje imamo Hive, Scal, Kafku i NoSQL – svaki od ovih tehnologija spominje se u četvrtini predstavljenih radnih mjesta. Apache Hive je program za pohranu podataka koji "olakšava čitanje, pisanje i upravljanje velikim skupovima podataka koji se nalaze u distribuiranim pohranjivačima pomoću SQL-a." – programski jezik koji se aktivno koristi u radu s velikim podacima. Konkretno, Spark je razvijen u Scali. U već spominjanom rangu strahovitih jezika, Scala zauzima jedanaesto mjesto. – distribuirana platforma za obradu stream podataka. Veoma je popularna kao sredstvo za prijenos podataka.
suprotstavljaju se SQL-u. Razlikuju se u tome što nisu relacijski, nisu strukturirani i imaju horizontalnu skalabilnost. NoSQL je stekao određenu popularnost, no fanatično oduševljenje ovim pristupom, uključujući i proroštva da će zamijeniti SQL kao dominantnu paradigmu pohrane, čini se da je završilo.
Usporedba s pojmovima u poslovima data scientist
Evo trideset tehnoloških pojmova koji su najčešće korišteni među poslodavcima u području znanosti o podacima. Ovu sam listu dobio na isti način kako je opisano ranije za data engineering.

Spominjanje tehnologija u poslovima za poziciju data scientist 2020. godine
Govoreći o ukupnom broju, u usporedbi s ranije analiziranim skupom, bilo je 28% više radnih mjesta (12 013 naspram 9396). Pogledajmo koje se tehnologije rjeđe pojavljuju u poslovima za data scientiste u odnosu na data inženjere.
Popularnije u data engineeringu
Na donjem grafikonu prikazane su ključne riječi s prosječnom razlikom u vrijednostima većim od 10% ili manjim od -10%.

Najveće razlike u učestalosti ključnih riječi između data inženjera i data znanstvenika
Najveći porast uočava se kod AWS: u data engineeringu se pojavljuje 25% češće nego u data science-u (otprilike 45% naspram 20% od ukupnog broja radnih mjesta). Razlika je značajna!
Evo istih podataka u nešto drugačijem prikazu – na grafikonu su rezultati za istu ključnu riječ u poslovima za poziciju data inženjera i data znanstvenika prikazani jedan uz drugoga.

Najveće razlike u učestalosti ključnih riječi između data inženjera i data znanstvenika
Sljedeći veći skok primijetio sam kod Sparka - data engineer često mora raditi s velikim podacima. također je porastao za 20%, što je gotovo četiri puta u odnosu na rezultate za data scientist. Prijenos podataka je jedna od ključnih dužnosti data engineer-a. Na kraju, broj spominjanja bio je 15% veći u području data engineeringa za Java, NoSQL, Redshift, SQL i Hadoop.
Manje popularne u data engineeringu
Sada pogledajmo koje su tehnologije manje popularne u oglasima za data engineer.
Najveći pad u odnosu na područje data science dogodio se kod : tu se spominjao u otprilike 56% oglasa, ovdje – samo u 17%. Impresivno. R je programski jezik koji uživa popularnost među znanstvenicima i statističarima, a također je na osmom mjestu u rangiranju jezika koji izazivaju strah.
također se pojavljuje u oglasima za poziciju data engineer znatno rjeđe - razlika iznosi 14%. SAS je patentirani jezik namijenjen radu sa statistikama i podacima. Zanimljiva stvar: prema rezultatima , u posljednje vrijeme je značajno izgubio pozicije - jače nego bilo koja druga tehnologija.
Budući da su traženi i u data engineeringu i u data science-u
Treba napomenuti da se osam od deset najboljih pozicija u oba skupa podudaraju. SQL, Python, Spark, AWS, Java, Hadoop, Hive i Scala ušli su u desetak kako za industriju data engineeringa, tako i za data science. Na grafikonu ispod možete vidjeti petnaest najpopularnijih tehnologija među poslodavcima data engineer-a, a pokraj njih - njihov pokazatelj u oglasima za data scientist.

Preporuke
Ako želite raditi u data engineeringu, preporučio bih vam da ovladate sljedećim tehnologijama – navođenje po redoslijedu približne prioritizacije.
Učite SQL. Savjetujem vas da se usredotočite na PostgreSQL, jer ima otvoreni kod, veliku popularnost u zajednici i u fazi je rasta. Kako koristiti jezik, možete saznati iz knjige My Memorable SQL – njezina probna verzija dostupna je .
Ovladate Python-om, iako ne na najteži način. Knjiga My Memorable Python prilagođena je baš za početnike. Možete je kupiti na , elektroničku kopiju ili fizičku, po vašem izboru, ili preuzeti u pdf ili epub formatu .
Kada se upoznate s Pythonom, pređite na pandas – Python biblioteku koja se koristi za čišćenje i obradu podataka. Ako planirate raditi u kompaniji u kojoj je potrebno znati pisati u Pythonu (a takvih je većina), možete biti sigurni da će znanje pandas biti podrazumijevano. Trenutno završavam uvodni vodič za rad s pandas – možete , kako ne biste propustili trenutak izlaska.
Savladajte AWS. Ako želite postati data engineer, ne možete bez cloud platforme u svojoj torbi, a AWS je najpopularnija među njima. Kursevi , pomogli su mi dok sam učio , mislim da će i za AWS imati dobre materijale.
Ako ste već savladali cijeli ovaj popis i želite se dodatno istaknuti pred poslodavcima kao data engineer, predlažem da dodate Apache Spark za rad s velikim podacima. Iako moje istraživanje o ponudama za posao u data science pokazuje opadanje interesa, kod data engineer-a se on ipak pojavljuje gotovo u svakoj drugoj ponudi.
Na kraju
Nadam se da vam je ovaj pregled najtraženijih tehnologija za data engineer bio koristan. Ako vas zanima kako stoje stvari s ponudama za analitičare, pročitajte . Sretno s inženjeringom!
Izvor: habr.com
