Според , data engineer в момента е професия, на която нараства търсенето по-бързо от всяка друга. Data engineer играе критично важна роля в организациите - създава и поддържа работещи пайплайни и бази данни, които се използват за обработка, трансформация и съхранение на данни. Какви умения са най-необходими на представителите на тази професия? Различава ли се списъкът от това, което се изисква от data scientists? За всичко това ще научите от моята статия.
Анализирах обявите за работа на позицията data engineer така, както те се предлагат през януари 2020 година, за да разбера кои технологии са най-популярни. След това сравних получените резултати с статистиката за обяви за позиция data scientist – при това се откриха някои интересни разлики.
Да пропуснем дългото предисловие - ето топ десет технологии, които най-често се споменават в обявите за работа:

Споменавания на технологии в обявите за позицията data engineer през 2020 година
Нека разберем.
Задължения на data engineer
В днешно време работата, която извършват data engineers, е от огромно значение за организациите - именно тези хора отговарят за съхранението на информацията и я подготвят за работа от други служители. Data engineers изградят пайплайни, за да осигурят получаване на данни, поточно или пакетно, от множество източници. След това пайплайните извършват операции по извличане, трансформация и зареждане (с други думи, ETL-процеси), правейки данните по-подходящи за бъдеща употреба. След това данните се предоставят на анализатори и data scientists за по-дълбока обработка. Накрая данните завършват пътуването си на информационни панели, в отчети и модели за машинно обучение.
Търсех информация, която да даде представа за това, кои технологии са най-търсени в работата на data engineer в момента.
Методите
Събирах информация от три сайта за работа - , и и разглеждах кои ключови думи се появяват в комбинация с "data engineer" в обявите за работа, насочени към жители на САЩ. За тази задача използвах две библиотеки на Python - и . В числото ключови думи включих както тези, които влязоха в предишния списък за анализ на обяви за позицията data scientist, така и тези, които ръчно подбрах, четейки обяви за работа за data engineers. LinkedIn не влезе в числото източници, тъй като ме забаниха там след миналия опит да събера данни.
За всяка ключова дума изчислих процента на попадения от общия брой текстове на всеки от сайтовете поотделно, а след това изчислих средната стойност от трите източника.
Резултати
По-долу са представени тридесет технически термина от сферата на data engineering с най-високи показатели по всички три сайта с обяви.

А ето и същите цифри, но представени под формата на таблица:

Нека да започнем по ред.
Преглед на резултатите
И SQL, и Python фигурират в повече от две трети от разгледаните обяви. Именно тези две технологии е целесъобразно да се изучават най-напред. – много популярен език за програмиране, използван за работа с данни, създаване на уебсайтове и писане на сценарии. разширение на Structured Query Language (език за структурирани заявки); той предполага стандарт, който се реализира от група езици, и се използва за извличане на данни от релационни бази. Появи се преди много време и се е утвърдил с висока устойчивост.
За Spark се говори в около половината от обявите. – това е „обединен аналитичен двигател за обработка на големи данни с вградени модули за потоково предаване, SQL, машинно обучение и обработка на графи“. Той е особено популярен сред тези, които работят с бази от данни с големи размери.
AWS се среща в около 45% от текстовете на обявите. Това е облачна изчислителна платформа, произведена от Amazon; тя държи най-голям дял на пазара сред всички облачни платформи.
Следват Java и Hadoop – малко над 40% на брат. – широко разпространен, доказал се език, който в зае десето място сред езиците, които предизвикват ужас у програмистите. В противовес на него, Python се оказа вторият език с най-голяма любов. Езикът Java управлява Oracle, и всичко, което трябва да знаем за него, можем да разберем от този скрийншот на официалната страница от януари 2020 година.

Като че ли се разходих с машина на времето
използва софтуерния модел MapReduce с клъстери от сървъри за големи данни. В момента от този модел започват все по-често да се отказват.
След това виждаме Hive, Scala, Kafka и NoSQL – всяка от тези технологии се споменава в една четвърт от предложените обяви за работа. Apache Hive е програма-хранилище на данни, която "опростява четенето, писането и управлението на големи набори от данни, разположени в разпределени хранилища, чрез SQL." – език за програмиране, активно използван при работа с големи данни. В частност, Spark е създаден на Scala. В вече споменатата класация на страховитите езици, Scala заема единадесетото място. – разпределена платформа за обработка на потокови съобщения. Много популярна като средство за стрийминг на данни.
се противопоставят на SQL. Те се различават по това, че не са релационни, не са структурирани и притежават хоризонтална скалируемост. NoSQL спечели известна популярност, но лудостта около този подход, стигаща до пророчество, че той ще замени SQL като доминираща парадигма за съхранение, изглежда вече е зад нас.
Сравнение на термините в обявите за работа на data scientist
Ето тридесет технологични термина, най-разпространени сред работодателите в сферата на data science. Този списък получих по същия начин, описан по-горе за data engineering.

Споменавания на технологии в обявите за позиция data scientist през 2020 година
Ако говорим за общия брой, в сравнение с разгледания по-рано набор, обявите са повече с 28% (12 013 срещу 9396). Нека да видим, кои технологии се срещат в обявите за data scientists по-рядко, отколкото в обявите за data engineers.
По-популярни в data engineering
На графиката по-долу са показани ключовите думи със средна разлика в стойностите над 10% или под -10%.

Най-големите разлики в честотата на ключовите думи между data engineer и data scientist
Най-значителен ръст показва AWS: в data engineering той се появява с 25% по-често отколкото в data science (приблизително 45% и 20% от общия брой обяви съответно). Разликата е съществена!
Ето същите данни в малко по-различен формат – на графиката резултатите за едно и също ключово слово в обявите за позиция data engineer и data scientist са разположени един до друг.

Най-големите разлики в честотата на ключовите думи между data engineer и data scientist
Следващото по големина увеличение, което забелязах, е при Spark – data engineer често работи с големи данни. също е нараснал с 20%, което е почти четири пъти в сравнение с резултатите за data scientist. Предаване на данни – едно от ключовите задължения на data engineer. Накрая, броят на споменаванията се оказа с 15% по-висок в сферата на data engineering за Java, NoSQL, Redshift, SQL и Hadoop.
По-малко популярни в data engineering
Сега да разгледаме кои технологии са по-малко популярни в обявите за data engineer.
Най-голям спад в сравнение със сферата на data science е настъпил при : там той е бил около 56% от обявите, а тук – само 17%. Впечатляващо. R е програмен език, който е популярен сред учени и статистици, и също така е на осмо място в класацията на езиците, които предизвикват ужас.
също се среща в обявите за позицията data engineer чувствително по-рядко – разликата е 14%. SAS е патентован език, проектиран за работа с статистически данни. Интересен момент: според резултатите , напоследък той е загубил позиции – повече от всяка друга технология.
Търсени и в data engineering, и в data science
Трябва да се отбележи, че осем от десетте първи позиции в двата набора съвпадат. SQL, Python, Spark, AWS, Java, Hadoop, Hive и Scala влизат в десетката както за сектора data engineering, така и за data science. На графиката по-долу можете да видите петнадесетте най-популярни технологии при работодателите на data engineers, а до тях – показателя им по обяви за data scientists.

Препоръки
Ако искате да се занимавате с data engineering, бих ви посъветвал да усвоите следните технологии – изброявам ги в реда на приблизителната им приоритетност.
Научете SQL. Склонявам ви именно към PostgreSQL, защото той е с отворен код, много популярен в общността и е в цикъл на растеж. Как да ползвате езика, можете да научите от книгата My Memorable SQL – пилотната версия е налична .
Научете Python, дори да не на най-високо ниво. Книгата My Memorable Python е точно за новаците. Можете да я закупите на , електронна или печатна версия, по ваш избор, или да я изтеглите в формат pdf или epub .
След като се запознаете с Python, преминете към pandas – библиотека на Python, която се използва за почистване и обработка на данни. Ако целите работа в компания, която изисква умения за програмиране на Python (а те са мнозинство), можете да сте сигурни, че познанията по pandas ще се очакват по подразбиране. В момента завършвам въведение в работата с pandas – можете , за да не пропуснете момента на пускане.
Научете AWS. Ако искате да станете data engineer, без облачна платформа в заданието ви не можете да се минете, а AWS е най-популярната от тях. Курсът ми много помогна , когато изучавах , смятам, че и по AWS ще намерите полезни материали.
Ако вече сте усвоили целия този списък и искате още да изглеждате добре пред работодателите като data engineer, предлагам да добавите Apache Spark за работа с големи данни. Въпреки че моето проучване за ваканси в сферата на data science показа спад в интереса, при data engineer-ите той все пак се появява почти във всяка втора обява.
Накрая
Надявам се, този преглед на най-търсените технологии за data engineer да ви е бил полезен. Ако ви е интересно, как вървят нещата с ваканси за анализатори, прочетете . Успешно инженерство!
Източник: habr.com
