Как много технических задач решают senior (Big) Data engineers?
Добрый день.
Коллеги, которые давно занимаются (Big) Data, и доросли до уровня Senior (или выше), скажите, как много задач по инженирии/программирования/архитектуры вы делаете?
Я пришел в (Big) Data из Software Engineers год назад, потому что мне начали нравиться задачи с обработкой данных, а не проектирование API (никого не хочу обидеть). Для справки: есть хороший опыт в Python/DevOps.
Но сейчас я начинаю наблюдать, что все меньше техничных топиков мне нужно, что бы расти по «лестницу», а больше SQL/Cloud services/BI и так далее. Например, на одном из курсов, спикер который работал в Microsoft и Amazon несколько лет, на позиции Data engineer, недавно скинул статью, где на пальцах рассказывают как работает concurrency and parallel processing, со словами «Никогда этого не понимал». Я думал это база для Data engineer.
Далее, я закончил чтение книги «High Performance Spark: Best Practices for Scaling and Optimizing Apache Spark» и мне очень понравилось как работает Spark «внутри», но написание на нем типичных задач — не особо вызывает энтузиазм.
Вообще, заметил, что в почти каждой тулзе которую использовал, я лезу во внутрь и смотрю, как она устроена. И это мне иногда намного интересней, чем ее использовать.
С одной стороны мне интересна техническая сторона обработки (больших) данных, но я все больше вижу, что большинство задач обработки можно решить зная базовый Python и использую разные SaaS Cloud решения.
Большинство проектов Big data сводятся к тому, что нужно подключиться к различным источникам и сделать витрину. Мы работаем в MS Azure и могу сказать, что техническиие навыки в языке програмирования отходят на второй план, так как в MS Azure есть инструмент оркерстрации (data factory) и он делает большое количество работы за нас. Самоя большая часть работы с данными строится на sql (в моем случае pyspark sql), так как sql наиболее удобен для работы с данными. Иногда, когда нужно сделать что-то не совсем тривиальное используем pyspark dataframe, и в самых редких случаях, когда нужно сделать что-нибудь "низкоуровневое" используем pyspark rdd.
НО!!! знание sql это мастхев для работы с данными. И думаю, что это самый важный инструмент для Big data