data будни

@data_days


работаю инженером данных и пишу в основном про это.

Профильные ссылки с коротким резюме (статьи, доклады, подкасты), иногда «софтовое» — например, про поиск работы.

data будни

18 Oct, 11:51


👋 Саша Михайлов, безработный

почти год назад я писал, как устроился в шведский финтех Klarna и уехал жить в Стокгольм. Раз уж написал начало истории, напишу и её окончание 😭

что же случилось? не прошел перфоманс ревью? очередные лейоффы? Кларна закрылась?

всё гораздо проще: семья не прижилась в новой стране и мы решили вернуться назад

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

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

нотис период кстати вышел в два месяца (по контракту вообще три, но спасибо внезапному коллективному договору).

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

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

сейчас мы все уже в Москве, снова вместе 🫶

P.S.: вместе с возвращённым корпоративным ноутом у меня сломался мой блоггерско-редакторский процесс (и не только, хе-хе), но планирую скоро вернуться с регулярными постами ✌️

data будни

07 Aug, 09:34


🥴 Reverse ETL — антипаттерн или норм?

у меня тут недавно наконец-то сложилась картинка в голове! до этого краем уха слышал этот новый термин, но никак не мог переложить его на реальность. А потом увидел схемку где помимо стандартного направления

источник → двх

была дополнительная стрелочка:

источник → двх → (обратно) источник

в итоге понял, что видел уже два таких кейса и пока ощущения смешанные:

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

2) сейчас есть задача передавать данные между микросервисами (разные команды): микросервис А производит данные, их сгружаем в ДВХ, там происходит очистка и обогащение; а потом мы эти данные выгружаем в микросервис Б.

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

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

⌘⌘⌘

что думаете про Reverse ETL? какбэ антипарттерн или норм? есть альтернативы? как «правильно»?

data будни

05 Aug, 18:54


🍱 восстанавливаю LinkedIn

→ в прошлых сериях: в процессе поиска работы в 2021 мне забанили аккаунт. Ретроспективно (спасибо за ссылки в комментах к прошлому посту!) прихожу к выводу, что это потому что я слишком агрессивно добавлял контакты и набралась критическая масса людей, которые в ответ на мой запрос жали кнопку «я не знаю этого странного чела»

и вот теперь они меня разбанили; ну как «разбанили» — видимо, где-то там внутри удалили старый аккаунт, и автоматика перестала банить новые попытки зарегаться как двойники. так что теперь заполнил всё заново и восстанавливаю старые контакты (крайне аккуратно, хе-хе)

из этого приключения делаю вывод, что надо читать правила сервиса не наглеть и не добавлять всех подряд дата инженеров фаанг в контакты.

тем временем приглашаю всех причастных и сочувствующих законнектиться! обещаю в ответ не жать злосчастную кнопку
https://www.linkedin.com/in/sasha-mikhailov-

к слову, если вы знаете как сделать линкедин по красоте, чтобы прям ваще вах! буду рад услышать прикладные советы <3

data будни

03 Aug, 08:31


🎙️сходил на подкаст обсудить кофе и дату



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

в эпизоде упоминали:

доклады Жени Ермакова и Коли Гребенщикова про чудо-DWH в Яндекс GO, благодаря которым я загорелся идеей попасть туда;

на один из предыдущих эпизодов подкаста, где гостем был Игорь Мосягин — поскольку он был в команде дата-платформы, там было много сочных деталей типа админстрирования Редшифта на 2к пользователей и мотивацию к документации.

data будни

03 Aug, 08:30


136 (S5E21). Будни дата-инженера

В гостях у подкаста 🎙"Data Coffee" Саша Михайлов, дата инженер ( Telegram⁠, LinkedIn⁠)

Обсудили:
• кофе
• дата инженер
• нужен ли CDO для data mesh
• карьерный путь
• переезд в Швецию
• деанон по фитнес-трекеру
• детские сады района
• почему дата инженер
• pet projects
• как развиваться

Сайт: ⁠⁠⁠⁠⁠⁠⁠⁠https://datacoffee.link⁠⁠⁠⁠⁠⁠⁠⁠
Telegram: ⁠⁠⁠⁠⁠⁠⁠⁠https://t.me/datacoffee⁠⁠⁠⁠⁠⁠⁠⁠
Mastodon: ⁠⁠⁠⁠⁠⁠⁠⁠https://techhub.social/@datacoffee⁠⁠⁠⁠⁠⁠⁠⁠
Чат подкаста: ⁠⁠⁠⁠⁠⁠⁠⁠https://t.me/datacoffee_chat⁠

#datacoffee #data #podcast #данные #подкаст #кофе #coffee

Где слушать🎧:
— Бот-плеер
— RSS feed
— YouTube
— Остальные площадки

data будни

25 Jul, 18:23


💊 реал биг дата!

у меня начинает складываться ощущение, что проблема big data плавно смещается; сначала все боялись этих терабайт данных: как же их хранить, как обрабатывать и искать в них инсайты.

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

теперь же встала другая проблема — среди этих десятков тысяч залитых и нагенерированных сущностей найти ту самую!

× как посчитать активных юзеров за прошлый месяц?

× как узнать сколько было возвратов?

× как понять сколько бизнес заработал? (или потерял!)

если спросить пять коллег, то получишь семь ответов; при этом часть будет пересекаться, а другая — прямо противоречить

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

кстати! давно хотел спросить: а что вы думаете о вопросах в конце постов?

data будни

22 Jul, 06:55


🛠️ Musk Engineering Algorithm

читаю биографию Илона Маска, нахожу любопытным его подход

Илона часто сравнивают со Стивом Джобсом:
основатели культовых компаний, визионеры-провидцы, дотошные менеджеры, и оба в жизни что называется asshole

в жизни Джобса был период, когда он управлял двумя компаниями одновременно: Apple и Pixar. Днём накручивал хвосты дизайнерам в Купертино, а после мчал на встречи с командой в Пиксаре. Есть версия, что именно этот период подкосил его здоровье, что в итоге способствовало развитию рака.

не умалая достижений Джобса, Маск — это какой-то следующий уровень: управлять не двумя, а уже шестью семью компаниями одновременно. SpaceX, Tesla, Solar Roof, Neuralink, StarLink, Boring Company, а теперь ещё и Twitter с xAI.

⌘⌘⌘

ниже «алгоритм», опробованный на заводах SpaceX и Tesla, а затем и на следующих компаниях

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

× Tesla должна была выйти на сборку 5000 машин в месяц, чтобы экономика вышла в плюс. Через последовательное применение алгоритма к каждому этапу производства Маск смог за несколько месяцев поднять почти в три раза (1800 → 5000), достигнув целевых показателей.

× тот же подход использовали в StarLink, когда первый проект спутника выкинули за негодностью и переделали с нуля: без лишних деталей и упрощённой конструкцией. На 2022 год StarLink была единственная в своём роде компания, предоставляющая «космический» интернет.

⌘⌘⌘

1. ставьте под сомнение каждое требование. Любое требование должно сопровождаться именем человека, который его выдвинул. Никогда не принимайте требование от «отдела»: например, «юридического отдела» или «отдела безопасности»; только от реального человека. Затем вы должны подвергнуть его сомнению, независимо от того, насколько умён автор. Требования от умных людей наиболее опасны, потому что их реже подвергают сомнению. Подход обязателен, даже если требование исходило от меня [Маска]; в этом случае постарайтесь сделать требование менее тупым.

2. удалите любую часть или процесс, который можете. возможно, позже вам придется вернуть их обратно. На самом деле, если потом не придется вернуть хотя бы 10% — значит, вы удалили недостаточно.

3. упрощайте и оптимизируйте; но только после второго шага! Распространенная ошибка — упрощать и оптимизировать часть или процесс, которых не должно существовать.

4. ускоряйте цикл — каждый процесс можно ускорить. Но делайте это только после того, как выполните первые три шага. На заводе Tesla я [Маск] по ошибке тратил много времени на ускорение процессов, которые, как я позже понял, нужно было удалить.

5. автоматизируйте; но только в последнюю очередь. Большая ошибка в Неваде и Фремонте заключалась в том, что я [Маск] начал с попытки автоматизировать каждый шаг. Но нам следовало бы подождать, пока все требования не будут поставлены под сомнение, части и процессы не будут удалены, и пока все ошибки не будут устранены.

⌘⌘⌘

алгоритм скопировал из поста DHH, где он тоже впечатлён книгой и её героем; там же понравился подход — можно не любить человека, но это не мешает у него учиться:

> You can absolutely learn from people you wouldn't want to be. Extracting wisdom from Musk's success does not oblige you to become his disciple or his mirror. Besides, you'd probably fail miserably in an attempt of the latter anyway.

data будни

16 Jul, 15:07


🍎 Andy Pavlo & Amazon Redshift

а теперь к деталям: в Кларне — AWS, поэтому хранилище тут на Redshift. для знакомства с технологией посмотрел соответствующую серию из курса:
https://youtu.be/T9-MM8oHzsM

⌘⌘⌘

в нулевых было несколько проектов по параллелизации Постгреса и к 2010 оставался только один, который не купили.

В 2010 Амазон решила порядочно сэкономить: вместо покупки целого стартапа, они просто в него инвестировали. Это позволило ей получить лицензию на сам код.

→ в 2013 выходит Redshift как продукт

→ в 2016 запускается Athena — доступ через SQL к данным на S3 (типа как Hive, да?)

→ в 2017 добавляется Spectrum — Redshift может напрямую читать данные с S3 без предварительного инджеста данных в свою файловую систему

⌘⌘⌘

ещё Энди высказывает мнение, что Snowflake был «лучше на старте», но у AWS есть привычка измерять всё на свете и на основе данных постоянно улучшать продукт.

по оценке Энди Redshift приносит AWS «миллиарды»; хотя открытых данных нет, но Энди делает оценки исходя из общего профита и примерной доли. Неплохой профит за небольшую инвестицию в 2010-м!

одно из преимуществ AWS — доступ ко всем-всем логам инфры. Отдельный кастомер может мониторить и тюнить свои запросы, а хозяин инфры видит всё и может сравнивать на всей совокупности.

data будни

16 Jul, 15:07


Andy Pavlo

меня покусал библиотекарь, поэтому перед тем как ввести новое действующее лицо, дам ссылку на общеизвестный факт.

имя Andy Pavlo у меня прочно ассоциируется с базами данных: Andy = databases, databases = Andy

у него есть открытый каталог всех баз данных, где уже есть ссылки на 998 (!) штук
https://dbdb.io/

ещё у него есть был стартап, который помогает тюнить клиентские базы данных с помощью мл: моделька на основе метаданных подкручивает настройки вашего постгреса в цикле с обратной связью. сами данные она не видит.
https://ottertune.com/

и, видимо, для души (и будущих клиентов и сотрудников), он ведёт курс по базам данных в университете CMU

несмотря на то, что курс офлайн в обычном кирпичном университете, все лекции записываются и доступны на ютубе (а ещё иногда в начале играет настоящий диджей!)

вот записи с последнего потока — 2024 год

data будни

15 Jul, 16:18


🔍 Data Observability

в Кларне наша команда отвечает за мониторинг монетизации партнёрского трафика. Данные получаем от affiliate networks (на русский вики предлагает перевод как «сеть партнёрских программ»). Сети передают данные по API (в основном).

казалось бы, тривиальная задача — взять данные из АПИ и положить их в базу. В целом так! но есть ньюанс >_>

когда команда начиналась, была одна сеть. Потом добавилась ещё пара. Через какое-то время клиенты начали просить добавить «ещё одну». Спустя несколько лет мы имеем 20+ сетей, к каждой свой коннектор и бегущие джобы.

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

⌘⌘⌘

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

так жить нельзя, подумал я, и из готовых блоков (Airflow + Datadog) наваял сбор метрик по свежести данных в разрезе сетей. Настроил алерты в Датадоге по порогам. Для наглядности там же в Датадоге вывел на деше значения метрик по каждой сети в динамике (с конфигурацией сразу в Terraform).

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

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

привнёс Data Observability, получается ☝️

⌘⌘⌘

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

и отдельно видно сети, которые мы начали переводить с ежедневного крона на каждый час — чёткие гребешки стали почти плоскими равнинами

data будни

14 Jul, 13:06


и вот перевод на русский с заглавной иллюстрацией важного технического термина из оригинального заголовка — piledrive

https://habr.com/ru/articles/823584/

data будни

14 Jul, 13:05


🙅 no more* AI

* вольный перефраз оригинального заголовка
https://ludic.mataroa.blog/blog/i-will-fucking-piledrive-you-if-you-mention-ai-again/

коллега скинул отрезвляющую и фомо-утоляющую статейку (спасибо, Игорь!)

ключевая мысль статьи — «вам не нужен AI только если вы не ресёрсч лаборатория» — звучит очень свежей посреди этого аи-хайпа вокруг


⌘⌘⌘

вашей компании не нужен AI! скорее всего в ваших продуктах уже достаточно аи: ваш антивирус сканирует файлы, фаерволл определеяет подозрительные по аномалиям (а почта исправно фильтрует спам)

ведь по факту получается, что вы тащите в свой прод экспериментальную (!) технологию с недетерменированным выводом (!!), в которой у вас нет экспертизы (!!!) и вы не умеете её разворачивать и поддерживать (!!!!)

вместо этого автор предлагает пойти проверить что-то более приземлённое и релевантное: например, актуальность и сохранность бэкапов своих баз — на удивление частый кейс в его опыте

слепое использование ко-пайлота в компании не повысит уровень кода (только его количество, хе-хе)


⌘⌘⌘

отдельно хочется отметить авторский слог, приправленный австралийскими реалиями:

I learned the wisdom of our ancient forebearers. You can hear it too, on freezing nights under the pale moon, when the fire burns low and the trees loom like hands of sinister ghosts all around you - when the wind cuts through the howling of what you hope is a wolf and hair stands on end, you can strain your ears and barely make out:

"Just Use Postgres, You Nerd. You Dweeb."

data будни

10 Jul, 18:33


👷 решения из реального мира

один из источников данных для нашей команды — внешние API. Каждый день мы запрашиваем новые данные и иногда пере-запрашиваем исторические.

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

собрались мы, значит, и стали думать как такого избегать.

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

… но лямдбу-то надо ещё написать, плюс она будет сама по себе отжирать из тех же лимитов на запросы. А потом всё это поддерживать…

тут выходит менеджер и предлагает просто написать вежливое письмо с просьбой сбросить лимиты.

и представляете — сработало! сбросили лимит ещё и подняли порог на следующий месяц!

получается, вместо того, чтобы писать код и приносить сложность в систему, достаточно было «просто спросить»

data будни

05 Jul, 13:40


😱 етл-таски в очереди по ~23 часа

в Яндекс Го была довольно стандартная (да ведь?) дата-архитектура: были дата-лейк на YT и DWH на Greenplum. Вначале все данные попадали в лейк, там как-то предобрабатывалось и потом можно было залить в GP для всяких там джойнов и прочих оптимальных доступов.

Два наблюдения:

- между YT и GP случались заторы — данные туда-сюда заливались немаленькие и задача перекладывания джейсонов между базами довольно нетривиальная

- одного не самого инженера могло быть достаточно, чтобы сделать GP плохо ( :wave: ) — как-то ко мне пришёл наш ДБА и попросил засунуть в остановить свой запрос и немного его оптимизировать перед следующим запуском

⌘⌘⌘


Проблема, видимо, распространённая, так как в Кларне схожая картина: есть лейк на S3/Athena и DWH в Redshift. По умолчанию все данные заливаются в Редшифт и там уже обрабатываются.

Дата платформа хотела как лучше и сделала удобный фреймоврк по клепанию Airflow-тасков: нужно всего лишь написать sql-файлики и добавить их в yaml по нужной форме. Вуаля! и ваш даг уже задеплоен Дженкинсом в коммунальный Airflow.

Фреймворк получися удобным и всё больше дата-инженеров и аналитиков стали добавлять свои тасочки. В начале задержек не было, потом очередь стала больше и свободные слоты в пуле Редшифта заполнились.

Начались очереди на запуск тасков — квадратик таска в Airflow никак не хочет становиться ярко-зелёным, хотя ДАГ запущен.

Задержки в очереди всё росли и росли; и к текущему моменту нельзя с точностью сказать когда запуститься твой таск. При кроне в 7 утра он может начать работать в 10, 18 или даже завтра! О новый дивный мир!

⌘⌘⌘


При этом управленчески вроде хотели как лучше: поддерживают коммунальный Airflow для демократизации доступа к данным и минимальным порогом доступа.

Но, видимо, в какой-то момент что-то пошло не так. Коммунальное и доступное привело к ситуациям, когда дата-саентист жалуется в поддержке, что его запрос выдаёт ошибку. Начинают разбираться и оказывается что он пытается скопировать к себе во временную таблицу все заказы за пять лет — и не просто инкрементально, а через drop-create каждый раз!

Получается, пользователи наклепали запросов, они как-то работают, но вот до рефакторинга и оптимизации обычно дело не доходит: надо фичи деплоить и велью деливерить, а не вот это вот ваше.

⌘⌘⌘


у команды платформы тоже не хватет рук на всё: несколько человек не могут уследить за поделками тысячи! при этом предмодерация каждой джобы здесь тоже не сработает — сломается демократизация и тот самый селф-сервис, куда все так стремятся.

и сейчас всеми силами пытаются исправить это бутылочное горлышко в виде Редшифта и перевести таски на Афину или Спарк с выделенным компьютом.

ещё из альтернативных предложений — каждая команда может заказать себе выделенный кластер Redshift Serverless. Всё то же самое, только ваше собственное: ни с кем делиться не надо и локтями толкаться в очереди не придётся.

data будни

29 May, 18:34


🍅 middle →→→ senior

https://seattledataguy.substack.com/p/how-to-grow-from-mid-level-to-senior

y Seattle Data Guy гостевой пост про то с какой стороны подходить к прыжку от мидла к синьору. Резонирует с тем что я вижу вокруг и как представляю свой путь в сторону помидорства


⌘⌘⌘


в первую очередь от синьора ожидают, что он автономно решает проблемы — от предложения рабочего решения до его имплементации, включая переговоры (!) с нужными сторонами и развитие коллег

непрекращающееся развитие — всегда готов научиться чему-то новому и рассказать об интересном

✓ действительно крутые штуки делаются вместе, поэтому развитие команды — ключевая необходимость

→ направления на подумать: вдумчивые и развивающие код-ревью, парное программирование и другие сессии обмена опытом; улучшение процесса онбординга


⌘⌘⌘

работать над действительно важными для компании штуками: ведь неважно сколько кафок с куберами задействовано, если пользователей — ноль

→ направления на подумать: интересоваться целями компании, смотреть вширь от проекта: апстрим и даунстрим


⌘⌘⌘

овнершип и ответственность. Увидел проблему — взял и решил. Не скидывать ответственность на других.

→ направления на подумать: оставлять поляну после себя чуть лучше, чем была до; планомерная работа над документацией проекта; помогаешь преодолевать блоки у задачи


⌘⌘⌘

да! и не забыть рассказать тимлиду про свои хотелки, составить и провалидировать конкретный план с явными сроками; а после — не забыть задокументировать результаты своей бурной деятельность

→ направления на подумать: вести список достижений и сделанных задач, брать инициативу на 1:1 встречах с лидом, искать самые больные места и предлагать решения

data будни

27 May, 17:10


😱 забанили в LinkedIn

случилось страшное! дело было после мобилизации, когда я активно искал работу за бугром.

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

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

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

через 14 дней получил сухую копипасту в ответ, что мол конкретные причины мы не называем, т.к. это может быть использовано во зло. так что адьос!

⌘⌘⌘

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

на следующий день этот новый акк забанили по той же схеме.

тогда я попробовал зарегать следующий. Уже с новым телефоном. Бан на следующий день. Новый акк с рабочей почты — тоже бан. Когда появился шведская симка я сделал ещё одну попытку, но результат остался тем же.

⌘⌘⌘

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

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

как бы теперь Кларна не оказалась моим последним местом работы >_>

data будни

23 May, 19:53


data будни pinned «👋 я — Саша Михайлов: муж, отец, латентный рационалист, иногда сноубордист и любитель поиграть по воскресениям в доту. В октябре 2023 переехал в Стокгольм 🇸🇪 и работаю инженером данных в местном финтехе Klarna § про работу собственно, те самые data будни!…»

data будни

23 May, 19:48


🎠 астрологи объявили неделю ии

поэтому вот три ссылки в тему; ссылки получились по возрастающему уровню сложности — можно найти на свой вкус


I. подкаст «вы находитесь здесь»

мастерски сделанный подкаст от студии Либо/Либо про историю изучения машинного обучения: первые автоматоны, первые соревнования по распознаванию текста и картинок, первые гонки беспилотных машин и т.д.

всё разбито на идеальные серии по ~25 минут — удобно слушать в дороге или на обеде. Каждая серия раскрывает свою тему. Рекомендую.

https://libolibo.ru/nowyouarehere


II. выпуск Подлодки про приложения на ллм

интересный гость с кучей релевантного опыта и чётким, структурированным рассказом — помогло связать в голове разные кусочки в единую картину.

вот все жалуются, что сети иногда галлюцинируют; на самом деле это не так — сети галлюцинируют 100% времени. Это суть их работы — придумывать ответ, которого до этого не было.

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

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

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

прошлись по методам промпт-инжиниринга — как можно быстро улучшить выдачу от нейросети:

→ базовый метод — жать кнопку «ответить снова» пока ответ не будет устраивать; вполне рабочий вариант для старта, рано или поздно сеть может догаллюционировать до приемлемого ответа

→ ещё сильно помогает добавить к вопросу пример ожидаемого ответа; никто не знает, почему это работает, но кажется это подксказывает сети в какой области собственных знаний найти подходящий ответ

→ если попросить сеть рассуждать по шагам, то вероятность промежуточной ошибки снижается

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

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

https://t.me/podlodkanews/1313


III. большой обзор подходов к промпт-инжинирингу

Seattle Data Guy ретвитнул рестакнул большую статью. Я прочитал где-то треть и мозг уже вспух. Похоже на научный пейпер: рассмотрены все подходы к улучшению ответов ллм, всё по порядку и по полочкам. И на некоторые топики есть отдельные лонгриды.

в целом, список тем такой же как в подкасте Подлодки — можно либо слушать, либо читать

https://substack.com/home/post/p-143156742

data будни

17 May, 19:17


👋 я — Саша Михайлов: муж, отец, латентный рационалист, иногда сноубордист и любитель поиграть по воскресениям в доту. В октябре 2023 переехал в Стокгольм 🇸🇪 и работаю инженером данных в местном финтехе Klarna


§ про работу

собственно, те самые data будни!

до 30 лет работал менеджером по логистике — следил, чтобы контейнеры из Китая и фуры из Европы исправно привозили нужные товары.

потом отучился на аналитика данных в Практикуме (в самой первой когорте, хе-хе), после него два месяца искал первую работу по новому профилю.

работу нашёл в отделе маркетинга торгового центра — спасибо ребятам за доверие! помню, как пришёл к ним готовый анализировать их данные с пандасом наперевес… а данных-то и не было! их мне как раз и предстояло собрать >_>

поскольку там я был единственным дата-инженером, приходилось собирать советы по чатикам <3 и сильно помог вводный курс по ДЕ от Димы Аношина

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

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

там ↑ заботал алгосики и смог пройти все ступени собесов в Яндекс (приходил в общее ДВХ Такси, но почти сразу нас отделили в ДВХ Доставки). В составе лихой дата-бригады обслуживать ДВХ на всю компанию.

→ после мобилизации решил попробовать завести трактор и тут снова нашёлся подходящий курс от Практикума: английский для разработчиков. Там рассказали как работают и ищут работу на английском — и сразу на практике отрабатывал полученные знания, откликаясь и проходя тамошние собесы.

одна из нескольких ниточек привела к офферу в шведский финтех и мы с супругой решили попробовать пожить-поработать в другой стране

→ прошёл курс про эвент-дривен архитектуру от школы сильных программистов. Третий раз в жизни писал приложение на джанго. Первый раз поднял локально Кафку. Узнал столько интересного, что перевариваю уже два месяца как.


§ фан-факты обо мне

до того как податься в айти, думал стать дизайнером

✓ спарсил сайт из гугл-таблиц, чтобы сделать красивый чек-лист с треком личного прогресса

чтобы стать дата-инженером, я учился на дата-аналитика (а целился вообще в дата-саенс!)

опознал человека по данным с его фитнес-трекера

✓ помог Роме Бунину достать данные из движка блога, чтобы он сделал клёвый виз

✓ приходил гостем в подкаст Data Heroes

после переезда в Стокгольм, спарсил емейлы детских садов нашего района и отранжировал их по дальности от дома, чтобы записать сына в ближайший детский сад

моё лицо висит на главной Практикума

у меня есть тату, разработанная нейросетью


а в комментах открою один страшный блоггерский секрет!

data будни

17 May, 19:16


🗿 этому каналу не хватало лица!

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

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

как и любой подобный чатик, канал может затихнуть на месяц, а потом начать выдавать по посту-два в день ¯\_(ツ)_/¯

кажется чуток странным вести в таком духе анонимный канал (там правда подписано, но официально-то мы друг другу не представлены!)

в общем вот: