Инжиниринг Данных
23.5K subscribers
1.98K photos
56 videos
192 files
3.2K links
Делюсь новостями из мира аналитики и карьерными советами.

15 лет в Аналитике и Инжиниринге Данных, 10 лет в MAANG

🛠️ dataengineer.ru | 🏄‍♂️ Surfalytics.com

№5017813306

Реклама:
https://almond-rule-130.notion.site/1199f595f76a8030ba1be1e607c9a8ce
Download Telegram
DE skill matrix
👍44😢12😁3
Существует несколько терминов, которые, как говорят коллеги - confused.

Итак, есть база данных, и базы данных бывают SQL и NoSQL.

Мы обычно работаем с SQL. Пример, это Postgres, MySQL, sql server.

Такую базу данных можно использовать как хранилище данных или как источник данных для хранилища данных. Если это заточник, 99% это OLTP, а мы с помощью ETL/ELT или даже CDC, забираем данные в хранилище.

NoSQL, например MongoDb, это уже источник, обычно нам надо знать как мы можем забрать данные из неё.

Дальше непосредственно хранилище данных, что прежде всего означает SQL интерфейс, это либо тот же Postgres/sql server или кластер (аналитическая БД) как greenplum, redshift и тп.

Дальше - озеро данных. Это из мира big data, когда у нас есть файловое хранилище и отдельно compute, чтобы обрабатывать это данные. Интерфейс может быть любой. - SQL, Java, python и тп, зависит от абстракции.

Дальше у нас lake house, как понятно из названия это гибрид озёра и хранилища. Само по себе озеро обычно не обладает возможность UPDATE, DELETE и других операций, к которым мы привыкли, а вот lake house может! Примеры это delta lake, iceberg, hudi. Все работают со Spark. Самый популярный вендор это databricks.

Вот snowflake, по факту схож с понятием lake house, но для простоты он считается хранилищем данных (базой), хотя там базы то и нет.

Теперь хочу посмотреть на другую терминологию.

Сейчас часто можно видеть data platform. Это слово универсальное, ей можно обозвать любое решение для хранения и обработки данных.

Но в индустрии его трактуют по другому.

Вот пример, с которым я работаю. Есть 2 команды - традиционная DE и data platform команда.

Инженеры платформы собирают данные из систем источников с помощью Kafka cdc, складывают их в файловое хранилище (aws s3). Он отвечают за входящие данные, не используют SQL, по факту это software engineers.

Downstream команда, уже создаёт хранилище данных на Snowflake, забирая данные из S3, строя модели данных в snowflake, добавляют данные из sales force и других api через fivertran и готовят данные для tableau/looker, используя montecarlo, airflow, dbt, alation.

Раньше я думал, что de = data platform engineer. Это не так, я в этом убедился когда провалил собес в Epic на такую позицию, требования там другие.

Можете в комменты чего-нибудь интересное скинуть по теме.
👍645
Если вы соскучились по западнным конференциям и спикерам, где известные личности будут рассказывать о важности аналитики и данных, то вот вам замечательный event - https://www.matillion.com/data-unlocked/

Спикеры интересные, презентации думаю тоже будут красивые, раньше я с таких идеи воровал для своих:)
👍16
Сколько времени нужно посвящать учёбе и профессиональному развитию?

Ясень пень, это все относительно. Новичкам, нужно посвящать время больше, старичкам меньше😎

Если ваша задача получить первую работу в новой области (возможно это что-то связанное с данными и аналитикой), то учиться надо все свободное время.

А если у вас уже есть работа в этой области, то самый хороший вариант это использовать подход Амазон - 70/20/10.

70% - вы тратите на работу и учитесь по ходу.
20% - вы тратите на дополнительные материалы, курсы и книги.
10% - конференция, митапы, онлайн трансляции и тп.

Как делаю я? Так как у меня есть понимание в общем и мне понятна картина мира аналитических решений, то у меня обычно возникает 2 проблемы:
1) я не знаю специфику бизнеса, и тут быстрых вариантов нет, только опыт. Например в Xbox gaming я вкатывался почти год, чтобы комфортно понимать о чем речь.

2) Тулы (технологии) - тулов как грязи, чего там только нет, часто уже что-то используется в компании. По опыту скажу, лучше не тратить время на МНТ (метод научного тыка), а взять сразу книгу или курс по конкретной технологии и сделать его от корки до корки, так подвид быть по snowflake, airflow, dbt, databricks, terraform, Tableau, power bi, и много чего другого. Так вы сэкономите много времени себе и сделаете меньше ошибок.

А как вы учитесь? Какие советы дадите начинающим?
👍70
😁1056🤔4
Посетила интересная мысль😋

Возьмём dbt - безумно популярный продукт, особенно с облаками и со snowflake. Snowflake с удовольствием продвигает dbt, dbt делает тоже самое в ответ.

При этом лента в LinkedIn завалена сообщениями про безумный ценник на снежинку, из-за большого количества CTE, которые dbt создаёт. Проблемы с оптимизацией запросов и партициями (снежинка же это data warehouse as a service, то есть все там и без вас знают как тюнить).

Так вот мне кажется, чтобы сделать успешный продукт в экосистеме snowflake, надо его сделать таким, чтобы он как можно больше бабла тратил и приносил профит «папе» продукту, как история с dbt и snowflake.

Возможно, что без dbt клиенты меньше бы заносили денюшек.

Возможно продукты типа Monte Carlo, работают схожим образом. С MC подучилось интересная история, в одном месте его любят и используют, хотя я не понял в чём прикол, так как slack завален alerts от MC, и это больше похоже на шум. А в другом месте, менеджеры смотрели на MC и сказали, что он бесполезен, так как dbt и так все покрывает тестами.

Хотя в 1м месте помимо MC используют ещё reverse etl High touch (нахера, я не знаю), а во втором используют просто python скрипт.

И ещё один показатель для идентификации типа компании - в 1м варианте это fivetran, во 2м это meltano. И кстати платный fivetran падает чаще.
👍29🤔72
Как часто, при выходе на новую позицию в новую команду компанию, нам хочется все переделать и переписать?

Да, практические всегда! Это уже кажется известный мэм. Но с опытом мы понимаем, что это ловушка, в которую легко попасть.

Часто очевидно, что проще создать новое решение, использовать более современный продукт или сделать миграцию в облако. Все это бесспорно хорошо, в большинстве случаев.

Но, не не стоит забывать, что то решение, которое сейчас есть и тот подход, который использовался, помог организации оказаться там, где она сейчас. И если вас туда взяли на работу, то не все так плохо в организации. Нужно принять этот факт и воздержаться от комментариев, что это 💩.

Критиковать нужно правильно. Легко сказать, что у вас плохо, но это делу не поможет.

Если вы хотите, что-то поменять, то вам нужно сначала разобраться как работает существующее решение, понять почему были сделаны архитектурные решения.

Дальше вам нужно написать документ и сделать дело, как нужно сделать «правильно», описать преимущества и недостатки, стоимость решения, время на внедрению/миграцию и тп. То есть обычной подход - «если критикуешь, предлагай альтернативу.»

Я часто попадал в это ловушку, после пары недель работы на новом месте начинал сыпать идеями, как и что можно поменять, и указывая на недостатки, думаю о том «ну какой же я молодец». С опытом понимаешь, что был совсем не «молодцом», а лишь только спамил и отвлекал коллег.

А как вы критикуете решения, которые были созданы до вас?
🔥52👍195😁5🤔1😭1
В 2024 году в Chrome отменят формат файлов cookies, и рекламный рынок давно обсуждает, как избежать негативных последствий этого решения ИТ-гиганта. На днях появилось новое решение

DMP-платформа AmberData предоставила cookies, а разработчики компании Platforma провели мэтчинг трафика партнеров и телеком-оператора и смогли конвертировать cookie в MAID - идентификаторы мобильных устройств.

Технологию протестировал телеканал UDAR. Они привлекали внимание мужской аудитории, интересующейся боевыми искусствами к трансляции турнира Top Dog. В качестве инструмента использовался таргетинг in-app.

Результаты оказались хорошими: CTR (число кликов к числу показов) в среднем в 6 раз выше, а CPC (cost per click) в 3-4 раза ниже, чем у традиционной открутки баннеров.
👍19🤬2
Бывает еще модная визуализация))
😁10👍3👏1
Статья про geospatial analytics от Tableau.
👍9
Data Engineering Zoomcamp запускается 16 января.

Основные темы:
🔸 Docker
🔸 Orchestration
🔸 Data warehousing
🔸 Analytics engineering
🔸 Batch processing
🔸 Streaming

То есть это уже не начальный уровень. Возможно будет хорошо после завершения имеющихся модулей по datalearn, где вы поймете основы и терминологию. А тут уже упор на open source, но и все на английском, что тоже полезно. Актуальные знания и бесплатно.
👍73🔥371
AWS Glue - serverless ETL инструмент на базе Apache Spark. Вышла новая книга - Serverless ETL and Analytics with AWS Glue: Your comprehensive reference guide to learning about AWS Glue and its features

Я сам уже пользуюсь Glue пол года, после databricks конечно не ice, но в целом, намного удобней чем Elastic Map Reduce (EMR) + Spark (Hadoop от AWS).
👍10
👍232🔥2🤔2
Екатерина написала интересную и полезную статью на хабре - Матрица уровней дата инженеров Amazon. Если у вас в компании есть разные уровни инженеров данных или вы хотите понять какие обязанности должны быть в зависимости от уровня, то вам будет интересно.

PS Поддержите лайком или коментом.

PPS Катя занимается дата аналитикой и инжинирингом данных (уровень мидл) и с удовольствием рассмотрит вакансии по аналитике данных в роли аналитики, BI или инженера данных. Она находится в Самаре, если есть открытые вакансии и нужен хороший специалист, пишете ей в личку!
👍68🔥13
Куда ни глянь, везде пишут про data contracts. Это прям уже какой-то новый тренд после Data Mesh и других “инновационных” вещей. На проекте, где используются Snowflake+dbt поверх платформы на S3, тоже затронули тему data contracts.

Я был очен ленив и не смог прочитать все посты на medium по этой теме, но согласно нашим инженерам, они создали процесс, который посчитает кол-во клиентов/строк/заказов/событий/кликов) или еще чего в системе источнике и в хранилище данных и сравнивают результат. Согласно контракту, кол-во должно совпадать, а если не совпадает, то Хьюстон, у нас проблема! и мы получим в алерт в слак.

Я такое еще делал в SAP BusinessObjects 10 лет назад. А как у вас с data contracts, как вы понимаете этот термин?
👍22
Recruiter:
- We offer a competitive salary.
Employee:
- Great, how much is it?
Recruiter:
- Don't worry about it, it's competitive. Anyways, what skills do you have?
Employee:
- Oh, I have amazing skills.
Recruiter:
- Great, can you tell me more about them?
Employee:
- Don't worry, they're amazing.
😁239👍25👏6🔥5
25-26 октября будет конференция от Monte Carlo - Impact. Вот ссылка для регистрации https://impactdatasummit.com/2022?utm_source=datadog 😏 Можете узнать больше про data observability.

В следующем спринте мне предстоит внедрять это штуку и вообще разобраться в особенностях между dbt, datadog и МС

At Monte Carlo — named after the simulation, not the destination — we’re committed to making data reliable. - это все прекрасно, но гугл выдает совсем другую информацию, когда мы ищем про МС😄
👍7
Пока одни бегут от Redshift на Snowflake, databricks или ещё куда подальше, другие рассказывают об успешных кейсах внедрения redshift. Картинка от Peloton. Интересно, массовые увольнения, резкий спад стоимости акций как-то связан с выбором технологий?🫠
🤔15👍5😁1
Кстати, сегодня первый день я больше не в Xbox. За почти 2 года работы я многое узнал о создании ААА игр, сам процесс от идеи до реализации, особенности аналитики для дизайна игр и анализа поведения игрока и многое другое. За это время у меня было 3 xbox дома, Xbox game pass, топовый gaming PC. Мои дети подсели на Minecraft и сам я понял насколько gaming плохо, когда стала появляться зависимость от Fortnite. Было очень весело играть с одноклассниками сына, наверно я был единственным папашей кто играл онлайн с 4хкласниками. Когда я провалил собес в Epic, мне это помогло разорвать связь с Fortnite и я окончательно решил не тратить время на игры. Главная причина ухода из Xbox локальные отношения с менеджером, мягко говоря у нас была нездоровая среда. Другой минус ААА это жесткий микроменеджемент, мне кажется иначе нереально сделать топ игру за 3-4 года, но такой стиль работы мне не подходит, я больше чувствую себя свободным художником, чем машиной по написанию кода и логированию времени каждый день.

Больше я не принадлежу одной компании, а что-то вроде advisory/consulting для 3х компаний, как говориться один год за три😋
🔥114👍44🎉7🤔5