Data Engineer – Telegram
Data Engineer
442 subscribers
165 photos
3 videos
102 links
Дата-инженерия в схемах и мемах

По всем вопросам — @mobiledeveloper_bot
Download Telegram
Московский марафон (пятничное лирическое отступление)

Эпиграф
«Московский марафон, ветер северный,
На старте в Лужниках в старых трениках

Но не стена обычно губит,
А излишне быстрый старт»
(Популярная песня из 90х)


В времена оны, когда я «на почте служил ямщиком», работал руководителем инженерии данных в одном крупном DIY-ритейлере, ко мне постоянно стучались «косматые геологи», инженеры, (да и не только они, в общем-то), с просьбой выдать им список чудодейственных материалов, которые помогут им стать «лучшей версией себя» и достичь просветления в профессии.

Естественно, списки я им давал. Я вообще обожаю составлять списки, мое ОКР не даст соврать. Они были прекрасны, многое я и сейчас готов рекомендовать (и рекомендую), «но что-то его держало».

Путем долгой рефлексии (слово-то какое красивое) я понял причину. Ни один из этих материалов, ни даже все они в совокупности не стали для меня лично каким-то прорывом. Настоящим же прорывом, скачком в гиперпространство, разделившим мою карьеру на «до и после», стало решение пробежать Московский Марафон.

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

А после финиша пришло понимание, что для меня теперь нет ничего невозможного, я справлюсь с любой задачей, рабочей и не только.

Наивный… Я тогда не знал про 400 метров… Ни один самый едкий комментарий самого токсичного код-ревьюера не доставит вам столько боли и страданий, сколько эта, короткая, казалось бы, дистанция.

Так что, «всем бег». Это сейчас самый популярный вид спорта в России. Футбольные фанаты не согласны, но сколько их придет даже в Derby Day, если матч назначить на 5 утра, а цена билета будет около 3000?

И легких ног, конечно же, всем участвующим!

#московскиймарафон #лирическое отступление
🔥85👍2
#заметкинаполях #depatterns

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

Думаю, вы догадались, кем вас окрестят за незнание там наверху…

Итак, только в идеальном мире сферические лошади побеждают согласно расписанию. В менее идеальных мирах, к коим относится мир данных, порой бывает сложно предугадать момент для начала процесса поглощения. Предыдущий шаблон, казалось бы задачу решает, но в этом случае потребитель самолично ответственен за проверку наличия новых данных (Pull Semantics).

А что, если взять и «изменить мышление всей компании, распределив ответственность» и
обязав источник данных оповещать потребителей, перейдя тем самым от пассивного поглощения к событийно-ориентированному (Push Semantics)?

Звучит как план…

Шаблон «Внешний импульс» (External trigger) состоит из трех основных частей:

▪️Первый шаг соединяет ваши конвейеры с внешним миром путем подписки на канал с уведомлениями. Теперь вы ничего не пропустите.

▪️Шаг второй заключается в реакции на сообщения из внешнего мира (нужно принять решение, запускать ли конвейеры, а, если запускать, то какие?)

▪️Шаг третий - это, собственно, запуск нужных конвейеров.

Засим (кажется, тайное общество «симитов» затянуло и меня) с этой главой все.

Продолжение следует…
👍4
Прямое включение с конференции Data Internals 2025
👍8
Посетил вчера новую конференцию по миру данных - Data Internals. Первый блин, однозначно, комом не вышел. Организация была на очень высоком уровне, да и локация была выбрана удачно - одна из моих самых любимых в Москве.

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

Речь идет о докладах представителей «Лемана Тех»: Артемия Наумова «Ревью без боли: DataOps-подход к управлению изменениями в DWH» и Михаила Зотова « Airflow еще доступнее: опыт self-service-оркестрации в Lemana Tech». Среди дата-докладчиков появились две новые звезды. Парни, так держать!

Еще понравился доклад Владислава Заболоцкого (Райффайзен Банк) «Как подготовить платформу данных к миграции уже сейчас?», особенно в части работы с владельцами данных.

Смазал общее итоговое впечатление круглый стол на тему «Как вырастить специалиста по базам данных?» Тема интересная и актуальная, которую можно было развить в занимательную дискуссию. Вместо этого шесть Александров Мостовых целый час рассуждали на тему: «Как научить футболиста чеканить мяч?»
Весь разговор свелся к крайнему случаю: «Как вырастить специалиста по базам данных из студентов МФТИ и МГУ?» А такую задачу провалить можно, только если вас зовут Сергей Семак…

Посещением я очень доволен, тем более, что конференции - это все-таки не только ценный мех интересные доклады, но и встречи с теми, кого давно не видел, а также новые знакомства. Еще раз всех обнял.
🔥4👍3❤‍🔥1
Forwarded from DataJourney
Заметки на полях DataInternals

Главным лейтмотивом докладов, на которых я побывал, стала фраза: «Все лгут могут ошибаться». Не раз и не два докладчики повторяли тезисы:
- Если у кого-то получилось, то не факт, что получится у вас.
- Если у кого-то случился факап, то, у вас то может получиться.

Все топят за то, что нужно проводить эксперименты и RnD. Только выделив время и людей на детальный тест технологий можно быть убеждённым, что именно эта связка именно под вашей нагрузкой именно с вашими сотрудниками будет работать так, чтобы закрывать ваши потребности 🎯

Возможно, это знание вынужденное из-за ухода вендоров с их методичками и необходимости проводить тесты Open Source инструментов самостоятельно, возможно, отрасль выросла. Но, так или иначе, я горячо поддерживаю такие выводы и считаю, что просмотра доклада с удачным внедрением недостаточно для внедрения у себя, как прочтения статьи о неудаче недостаточно для отказа.

Всем тест! 😉

P.S. Очередной раз убеждаюсь, что главное на любой конференции - это люди, а мир даты достаточно тесен. Организаторам, несмотря на молодость конференции, удалось собрать отличных спикеров, которые хорошо раскрывали темы своих докладов. А в промежутках между докладами было приятно обсудить технологии со старыми знакомыми и бывшими коллегами.
🔥41👍1
Архитектор данных в очередной раз в своих публикациях затрагивает интересную тему. А примерно год назад мой любимый канал о системном мышлении также подбирался к подобному, рассказывая о книге Курта Воннегута «Пожалейте читателя». Вдохновившись этими двумя повествованиями, я решил, что пост о написании постов идеально подходит для пятничного лирического отступления.

Мне кажется, что для хорошего архитектора или инженера данных никаких сложностей с написанием текстов различных размеров, форматов и тематического наполнения возникать не должно. Рутинная, в общем-то, задача: собрать из подходящих под решение инструментов «архитектуру» текста и написать «код», обеспечивающий устойчивый «поток данных» между отдельными блоками. Только в качестве языка здесь используется русский, а не Python, Java или Scala, а владеющих им в мире данных, увы, намного меньше, чем знающих вышеупомянутые языки программирования.

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

Читателя жалеть я не собираюсь. Мой стиль сформировался под влиянием классиков современной британской литературы: Ирвина Уэлша, Тибора Фишера и Джона Кинга (теперь вот еще и Джойс привязался…) Однако, для описания его лучше всего подходят цитаты отечественных мыслителей.

Автор первой - Роман Суслов - главный «отказник» отечественного рока, в далеком 1986 году в забытой уже телепередаче «Музыкальный Ринг» на вопрос, думает ли он, что на такую музыку будет когда-нибудь массовый спрос ответивший:

«Нет, ни в коем случае. И рады этому!»


Автор второй - Сергей Жариков - философ, публицист, писатель, бывший художественный руководитель легендарной запрещенной московской рок-группы ДК:

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


Авторство третьей народная молва приписывает легенде отечественного трейлраннинга, организатору ГРУТа и многих других топовых забегов Михаилу Долгому:

«Если есть финишеры, то это моя недоработка».


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

Мне нравится экспериментировать, смешивать стили, менять акценты, ритм, паузы, «нанизывать по принципу калейдоскопа на хрупкий перебор куда более изощренные ходы». Чтобы было «Просто», хотя и «не о том речь…»

«Проще не будет уже никогда», но ведь даже обычный евролагер кажется гораздо более вкусным после преодоления сорока километров по раскаленной эльтонской степи, карабкаясь в почти вертикальные горки и продираясь сквозь насыщенный содержащими соединения брома, забивающие легкие, испарения самого соленого озера Европы воздух.
👍21💯1
#заметкинаполях #depatterns

Открывая новую главу «Шаблоны работы над ошибками», автор перефразирует Бенджамина Франклина:

«В мире данных ни в чем нельзя быть уверенным, за исключением ошибок и проблем с качеством данных.»


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

Про «необработанные записи» они же «битые записи» - здесь.

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

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

Динамический вариант подразумевает пересчет только тех периодов, которые содержат «долеты», но для этого их нужно сначала определить.

В реализации обоих варианта может помочь динамическое сопоставление задач - «фича», появившаяся в Apache Airflow версии 2.3, если мне память не изменяет. Рекомендую освоить, если еще не…

Продолжение следует…
👍2
Поделились тут со мной интересной статьей #напочитать на тему «Убьет ли ИИ дата-специалистов?» Речь идет только про дата-сайентистов, но я бы тут процитировал героиню Елены Яковлевой из «Интердевочки»: «Всех касается!»

Краткое содержание тем, кто не хочет лезть под VPN: нет, не убьет, но измениться заставит.

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


👶 Джуны

Делайте больше меньшими средствами: используйте ИИ, чтобы повысить эффективность и сделать свою работу заметной.

Развивайте soft skills: коммуникация, сторителлинг и т. д.


🧔🏻‍♂️👴🏻 мидлы и синьоры:

Эффективность: используйте ИИ, чтобы повысить эффективность своей работы и работы своей команды.

Внедрение: контролируйте, как ваша компания внедряет ИИ на практике.

Лидерство: устанавливайте стандарты, демонстрируя, как ИИ может влиять на бизнес-результаты.


Кроме того, автор представил список навыков, которые ИИ заменить не может и про которые почему-то (по его версии) никто не говорит (а вот тут было очень обидно):

▪️Влияние на бизнес: демонстрация того, как ваша работа связана с доходом, удержанием клиентов или эффективностью.

▪️Знание предметной области: понимание отрасли, в которой вы работаете, и контекста, лежащего в основе данных.

▪️Выстраивание отношений с заинтересованными лицами: построение доверия и согласованности для эффективного использования ваших идей.

▪️Коммуникация и «травля баек»(сторителлинг) : преобразование анализа в решения, способствующие развитию бизнеса.
👍4🤔1
Forwarded from Trino и CedrusData
Будем рады встретиться на конференции Smart Data уже в это воскресенье!

Владимир Озеров расскажет о перспективах развития Apache Iceberg:

🔹Планы развития (v3, безопасность, материализованные представления, scan planning, статистики и т. п.).
🔹Изменение роли REST-каталогов в экосистеме Iceberg.
🔹Вызовы и конкурентный ландшафт (near-real time сценарии, конкуренция с Paimon/Delta/DuckLake и т. п.).
🔹Состояние сообщества и его влияние на скорость развития и долгосрочные перспективы Apache Iceberg.

А пока делимся записью его прошлого выступления
👍3🤝1
Overqualified or Yet Another Data Friday Lyrical Digression

Сталкиваясь с подобной причиной отказа в приеме на работу, я всегда внешне реагировал на это философски, но в душе ехидно хихикал, представляя ответ как у героя с картинки и ощущая в нем непреложную истину.

До определенного момента я повсеместно утверждал, что, мол, мне все равно, и лишь бы деньги платили, но все же профдеформация, а именно: data-driven, проверка «всего и вся» данными - взяла свое. Проанализировав свой личный опыт, я обнаружил, что, все случаи (а подобное встречалось в моей карьере несколько раз), когда мне нужно было быть «потупее», я провалил, все они закончились уходом из компании, а некоторые - длительным выгоранием. Кажется, что, как минимум, для меня - это неподъемная задача.

«Если бы я был умный, я бы выдавал себя за дурака. Но я был дурак и потому выдавал себя за умного» (Владимир Войнович - «Москва 2042»)


В общем, если у кого-то есть успешные кейсы временного и осознанного отупения (постоянное не предлагать, а неосознанное я и сам регулярно практикую), делитесь, буду изучать продвинутые техники.
👍4😁3
Проблемы дата-специалистов с неймингом общеизвестны. На мой взгляд, круглый стол на тему смерти Hadoop должен был называться “DEти хоронят коня Hadoop”.
😁1
Как по мне, SmartData 2025 удалась. Старые друзья и новые знакомства - 🔥 Жаль, что состояние здоровья не позволило выжать больше из этой части.

По докладам.

Саша Токарев - кумирище! Терпеть не могу Spark, но слушал с интересом и удовольствием. Даже кое-что понял.

Понравился доклад от Передовых Платежных Решений про Starrocks

Ну, и особое удовольствие получил от круглого стола про Hadoop.

Доклад окончен, с нетерпением жду новых встреч в эфире.
🔥7
Как бы странно ни звучало , но, когда я покупал футболку с «котиком» в нагрузку к «высоконагруженному кабанчику», я ничего не знал об этой книге.

Наверняка, она даже лежала на том же прилавке, но мое внимание было занято чем-то другим.

Теперь придется читать, возможно, даже пополню бумажную коллекцию.
👍1😁1
Ребус дня
#разговорпопятницам

Собеседования - важная часть жизни дата-специалиста. Все, кому не лень, говорят и пишут о необходимости посещать их время от времени, даже если в сей момент работу не ищете и вполне удовлетворены текущим местом, хотя бы поддержания спортивной формы ради. Я когда-то тоже так делал, но последние лет семь практикую бразильскую систему, набирая кондиции непосредственно во время поиска работы от одного интервью к другому. Первые два-три обычно бывают откровенно провальными. Да простят меня коллеги, чье время я так бездарно потратил.

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

Самым странным из посещенных мной собеседований я могу назвать одно, случившееся со мной, когда я был еще неопытным джуном, хватавшимся за любую возможность. Естественно, за давностью лет я не помню ни названия компании, ни личности и внешности человека, меня собеседовавшего. Зато хорошо помню, как он вошел в переговорку с пачкой листочков, которые при ближайшем рассмотрении оказались распечаткой оглавления книги Итцика Бен Гана по основам T-SQL. По этой самой распечатке он и гонял меня от первой главы и до последней, делая пометочки карандашиком напротив каждого пункта. Продолжалось сие действие часа два. Задав последний вопрос, интервьюер откинулся на спинку стула и занялся подсчетом баллов. Я же ловил ртом воздух и вытирал пот со лба рукавом специально подготовленной к этому случаю единственной рубашки, ожидая оглашения результата.
Интервьюер написал на листе какое-то число, обвел его кружочком и взглянул на меня. «Готовы продолжать?» - спросил он.

Оказалось, что у него с собой еще есть оглавление книжки по C#.

«Нет» - ответил я. Сославшись на то, что «у меня самолет и вообще дела-дела» с высокого старта ломанулся куда глаза глядят. Личный рекорд в беге до метро мной установлен был именно тогда.

А в ходьбе по граблям мне вообще равных нет (разве что певица Порева). Поэтому на подобного рода собеседования я попадал еще пару раз, но ни разу ранее двух часов оттуда не выходил, хотя и понимал, что работать в такой компании ни за что не буду.

P.S. Пост посвящается двум легендарным интервьюерам, запечатленным на фото. Мое почтение каждому, их узнавшему.
👍6
Forwarded from topdatalab (Roman Zykov)
Две плохие новости за последний месяц: Fivetran купила SQLMesh и dbt.

Почему это плохо.
SQLMesh относительно молодая компания, ей около трех лет. То, что ее продали, означает, что они не смогли сделать выручку или не хватило амбиций фаундеров.
Думаю, что сейчас фаундеры SQLmesh ходят грустные.

Про dbt не скажу, но SQLMesh наступала ей на пятки.
И такая консолидация плохо повлияет на развитие инструментов.
Пятничное
🤣6🤮1
Придумал название для описания сего явления: «Мертвосервисная архитектура».

Upd Вариант, предложенный в комментах - «некросервисная» - звучит гораздо круче🔥
👍4😁1
Дочитал «Data Engineering Design Patterns». Книга действительно являет собой вольное продолжение «Fundamentals of Data Engineering», как автор и заявлял во вступительной части. Стоит добавить сюда ещё «Data Pipelines Pocket Reference», и тогда сложится своеобразный порядок чтения, которому я рекомендовал бы следовать.

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

Отличное дополнение - примеры кода, причем для различных технологий.

В общем, у книги есть все шансы на долгую жизнь.
👍9
Подошел к концу первый мой полноценный сезон в роли Head of Data. Можно заняться подведением итогов.

Очень помогает архитектурный бэкграунд. В общем-то, эти профессии несильно отличаются, нужно только учитывать еще один вид связей: связи между людьми.

Орбита лидера подтверждает мою догадку

Лидер как архитектор связей. 
Управлять — это не только ставить цели, но и строить мосты между командами, где раньше были стены.


Причем связи данного типа могут быть не только один-к-одному, один-ко-многим, многие-ко-многим, обязательными или необязательными, но и неформальными и даже токсичными.

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

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

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

Очень сложно порой смириться с тем, что подход, сработавший в одном месте, может не сработать в другом. Граблями и шишками усеян путь начинающего CDO. В целом, я считаю, что вышло неплохо, можно было лучше, но все еще впереди. Найти бы еще какую-нибудь тактику, чтобы ее хоть как-то придерживаться.

Канал переименовывать смысла не вижу потому что «бывших инженеров не бывает».
👍8🔥3
Следующую книгу в моем списке я в очередной раз позаимствовал из статьи «Лемана Про», ссылку на которую я уже несколько раз давал в канале. Книга называется «Дата Йога: грамотная работа с данными» от Александры Усачевой и Андрея Демидова.

Выбрал ее я по двум причинам:

▪️Книги по данным от отечественных авторов попадаются мне крайне редко.

▪️После парочки травм, выбивших меня из тренировочного процесса примерно на полгода, к растяжке я стал относиться немного серьезнее и стараюсь для нее выделять один день в своем недельном тренировочном графике. В комплекс же упражнений входит несколько элементов из йоги. Так что, «я и сам своего рода дата-йог».

Книгу можно скачать здесь.
🔥4🤮1