когда пишу в SQL запросах GROUP BY 1, 2 вместо полного наименования колонок, меня всегда тревожила мысль, что я халавлю и недоделываю НОРМАЛЬНЫЙ КОД.
Прочитал, что в dbt делают так же и успокоился: писать через «1» проще и понятнее (заскринил пример ^). Если что, буду показывать эту заметку 🌚
So why do I still group by 1? Well, there's a few reasons:
…
- 1 is a single character (and I'm lazy, OK?!).
https://blog.getdbt.com/write-better-sql-a-defense-of-group-by-1/
Прочитал, что в dbt делают так же и успокоился: писать через «1» проще и понятнее (заскринил пример ^). Если что, буду показывать эту заметку 🌚
So why do I still group by 1? Well, there's a few reasons:
…
- 1 is a single character (and I'm lazy, OK?!).
https://blog.getdbt.com/write-better-sql-a-defense-of-group-by-1/
эмпирически-оптимальное соотноешение: 2-3 дата инженеров на одного мл-инженера. Если дата инженеров меньше, то, получается, их работу делают мл-инженеры [а могли бы модели делать что-нибудь своё МЛ-ное].
https://twitter.com/dsunderhood/status/1420769858053103617
https://twitter.com/dsunderhood/status/1420769858053103617
data будни
эмпирически-оптимальное соотноешение: 2-3 дата инженеров на одного мл-инженера. Если дата инженеров меньше, то, получается, их работу делают мл-инженеры [а могли бы модели делать что-нибудь своё МЛ-ное]. https://twitter.com/dsunderhood/status/1420769858053103617
когда 2 года назад выбирал профессию, ориентировался именно на это соотношение. Кажется, не прогадал)
https://sashamikhailov.ru/blog/all/data-analyst-and-data-scientist/
https://sashamikhailov.ru/blog/all/data-analyst-and-data-scientist/
sashamikhailov.ru
Почему анализ данных, а не Data Science
Слышал, что при боевых действиях есть приём идти не основным путём, а параллельным. Типа всем говоришь, что пойдешь долиной, а отряд ведёшь по соседнему хребту
Уровни аналитиков
Женя Козлов описал опыт Яндекса по формализации грейдов для аналитиков. Написано очень чётко, можно использовать как шпаргалку для команд или личного развития.
Понравилось чёткое разделение каждого грейда в разрезе подхода к задачам (мелко разжованные а в конце просто глобальное направление).
В самом начале всё равно нужны математическая база, критическое мышление и какой-то прикладной опыт программирования.
Ниже надёргал абзацев из каждого раздела, рекомендую почитать целиком:
----
Аналитик данных – это человек, который помогает команде:
Продукт аналитика — это ответы на заданные и незаданные вопросы, создание мыслительных моделей и фреймворков, и выведенные из них рекомендации, которые приводят к росту показателей бизнеса.
1. Аналитик-стажер (trainee data analyst)
Аналитик-стажер работает на уровне четко сформулированных и хорошо формализованных задач. Задачи стажеру ставит исключительно старший товарищ-аналитик (наставник или руководитель). Он же проверяет результаты выполнения этих задач перед тем, как отдать эти данные куда-либо еще.
2. Младший аналитик (junior data analyst)
Младшему аналитику не хватает опыта в реальном продукте и бизнесе, поэтому он склонен решать задачи так, как они поступают:
– Нужно выгрузить эксельку с вот такими колонками? – держите.
– Нужно сделать дешборд? – нарисуйте на листочке, как он должен выглядеть.
и т. д.
Как правило при постановке задачи на младшего аналитика обсуждается детальный алгоритм с описанием данных, которые нужно использовать, способом трансформации этих данных (фильтрации, группировки, join’ы) и буквальным описанием, как должен выглядеть результат (если это график, то какие должны быть оси, нормировки, подписи, способ визуализации).
3. Аналитик 1 (Middle data analyst 1 step)
Это первый уровень самостоятельного аналитика. Почти все его задачи возникают в прямом взаимодействии с командой или бизнес-заказчиком.
Аналитик 1 всё чаще и чаще докапывается до сути идей и вопросов, с которыми к нему пришли. Думает про задачи в терминах решений, которые будут приняты, а не в терминах работы с данными.
4. Аналитик 2 (Middle data analyst – 2 step)
Аналитик 2 — автономный аналитический юнит. Наносит пользу бизнесу. Это более опытная версия предыдущего грейда, но есть и отличия, которые являются качественными, существенными: это понимание контекста и выросший уровень рефлексии.
Аналитик 2 должен уметь за рутинными операционными задачами видеть какие-то системные направления развития доверенной ему части бизнеса и понимать, как задачи связаны с целями, куда и зачем глобально движется продукт/компания.
Аналитик 2 решает задачи в бизнесовой постановке и результат его работы сформулирован обычно в таком же виде. Если это аналитический отчет — в нём есть рекомендация, как поступать и на что обратить внимание (точки роста и потенциальные проблемы). Если это дешборд или график — они помогают принимать решения.
5. Старший аналитик (Senior data analyst)
Супер-герой – таких очень мало. Даже в режиме рутинной работы приносит колоссальную пользу бизнесу, выраженную во влиянии на ключевые показатели продукта или вверенного ему бизнес-процесса. По сравнению с предыдущим уровнем растет глубина и сложность решаемых задач, автономность и проактивность. К сожалению, не каждый аналитик 2 способен дорасти до этого уровня.
6. Ведущий аналитик (Lead data analyst)
Аналитик-легенда. Таких единицы. Ведущий аналитик – это супер-эксперт в своей предметной наукоемкой области (как пример, алгоритмы диспетчеризации или поведенческая экономика).
https://gopractice.ru/data_analysts_levels/
Женя Козлов описал опыт Яндекса по формализации грейдов для аналитиков. Написано очень чётко, можно использовать как шпаргалку для команд или личного развития.
Понравилось чёткое разделение каждого грейда в разрезе подхода к задачам (мелко разжованные а в конце просто глобальное направление).
В самом начале всё равно нужны математическая база, критическое мышление и какой-то прикладной опыт программирования.
Ниже надёргал абзацев из каждого раздела, рекомендую почитать целиком:
----
Аналитик данных – это человек, который помогает команде:
• Принимать решения более объективно, основываясь на фактах и данных (в противовес мнению, интуиции и опыту). • Искать точки роста продукта и бизнеса.Продукт аналитика — это ответы на заданные и незаданные вопросы, создание мыслительных моделей и фреймворков, и выведенные из них рекомендации, которые приводят к росту показателей бизнеса.
1. Аналитик-стажер (trainee data analyst)
Аналитик-стажер работает на уровне четко сформулированных и хорошо формализованных задач. Задачи стажеру ставит исключительно старший товарищ-аналитик (наставник или руководитель). Он же проверяет результаты выполнения этих задач перед тем, как отдать эти данные куда-либо еще.
2. Младший аналитик (junior data analyst)
Младшему аналитику не хватает опыта в реальном продукте и бизнесе, поэтому он склонен решать задачи так, как они поступают:
– Нужно выгрузить эксельку с вот такими колонками? – держите.
– Нужно сделать дешборд? – нарисуйте на листочке, как он должен выглядеть.
и т. д.
Как правило при постановке задачи на младшего аналитика обсуждается детальный алгоритм с описанием данных, которые нужно использовать, способом трансформации этих данных (фильтрации, группировки, join’ы) и буквальным описанием, как должен выглядеть результат (если это график, то какие должны быть оси, нормировки, подписи, способ визуализации).
3. Аналитик 1 (Middle data analyst 1 step)
Это первый уровень самостоятельного аналитика. Почти все его задачи возникают в прямом взаимодействии с командой или бизнес-заказчиком.
Аналитик 1 всё чаще и чаще докапывается до сути идей и вопросов, с которыми к нему пришли. Думает про задачи в терминах решений, которые будут приняты, а не в терминах работы с данными.
4. Аналитик 2 (Middle data analyst – 2 step)
Аналитик 2 — автономный аналитический юнит. Наносит пользу бизнесу. Это более опытная версия предыдущего грейда, но есть и отличия, которые являются качественными, существенными: это понимание контекста и выросший уровень рефлексии.
Аналитик 2 должен уметь за рутинными операционными задачами видеть какие-то системные направления развития доверенной ему части бизнеса и понимать, как задачи связаны с целями, куда и зачем глобально движется продукт/компания.
Аналитик 2 решает задачи в бизнесовой постановке и результат его работы сформулирован обычно в таком же виде. Если это аналитический отчет — в нём есть рекомендация, как поступать и на что обратить внимание (точки роста и потенциальные проблемы). Если это дешборд или график — они помогают принимать решения.
5. Старший аналитик (Senior data analyst)
Супер-герой – таких очень мало. Даже в режиме рутинной работы приносит колоссальную пользу бизнесу, выраженную во влиянии на ключевые показатели продукта или вверенного ему бизнес-процесса. По сравнению с предыдущим уровнем растет глубина и сложность решаемых задач, автономность и проактивность. К сожалению, не каждый аналитик 2 способен дорасти до этого уровня.
6. Ведущий аналитик (Lead data analyst)
Аналитик-легенда. Таких единицы. Ведущий аналитик – это супер-эксперт в своей предметной наукоемкой области (как пример, алгоритмы диспетчеризации или поведенческая экономика).
https://gopractice.ru/data_analysts_levels/
GoPractice
ᐈ Навыки и требования к аналитикам данных на разных уровнях в «Яндексе». Профессия аналитика данных
Какими бывают уровни аналитика данных, как развиваться в профессии и какие компетенции нужны топовым аналитикам
Два подкаста про игры с точки зрения машинного обучения
Первый — короткий рассказ как машины учились обыгрывать людей в игры: шахматы, го, Дота 2 и даже прятки.
Особенно понравилась вставка про Доту с интернешнала с живыми криками комментатора. Фанфакт: перед матчем с Денди машина тренировалась 2500 лет игрового времени.
Слушать в iTunes и Overcast
Второй подкаст — уже серьёзный разговор с инженером из Google Deepmind о том что там под капотом у этого процесса и где эти навыки можно применить в реальном мире.
Ссылки на подкаст в посте автора
Первый — короткий рассказ как машины учились обыгрывать людей в игры: шахматы, го, Дота 2 и даже прятки.
Особенно понравилась вставка про Доту с интернешнала с живыми криками комментатора. Фанфакт: перед матчем с Денди машина тренировалась 2500 лет игрового времени.
Слушать в iTunes и Overcast
Второй подкаст — уже серьёзный разговор с инженером из Google Deepmind о том что там под капотом у этого процесса и где эти навыки можно применить в реальном мире.
Ссылки на подкаст в посте автора
Apple Podcasts
Вы находитесь здесь: На человеческом уровне. Зачем мы учим машины играть on Apple Podcasts
Show Вы находитесь здесь, Ep На человеческом уровне. Зачем мы учим машины играть - Mar 11, 2021
👍1
Не Спарком единым
за последние полгода в Эпохе поучаствовал в проектах по построению четырёх DWH для наших клиентов: 3 на BigQuery и ещё один на AWS Athena. Всё как надо — изучили источники, настроили пайплайны, собрали данные в одном месте, нарезали на слои, вывели на дашборды. Клиенты довольны.
При этом задействовано Спарка в проектах: ноль. Обошлись как-то и без Кафки с Хадупом.
Иногда кажется, что это какая-то ненастоящая дата инженерия. Но вот наш СТО скинул статью и я подуспокоился: ребята делают такие же DWH и так же обходятся без инструментов бигдаты.
Со всеми тезисами согласен — мы делаем так же: облачные DWH, инжест через пайплайны на питоне с использованием готовых библиотек, широкие таблицы в аналитическом слое.
Строим аналитическое хранилище данных с готовыми модулями ML на Google BigQuery: просто, быстро, доступно
за последние полгода в Эпохе поучаствовал в проектах по построению четырёх DWH для наших клиентов: 3 на BigQuery и ещё один на AWS Athena. Всё как надо — изучили источники, настроили пайплайны, собрали данные в одном месте, нарезали на слои, вывели на дашборды. Клиенты довольны.
При этом задействовано Спарка в проектах: ноль. Обошлись как-то и без Кафки с Хадупом.
Иногда кажется, что это какая-то ненастоящая дата инженерия. Но вот наш СТО скинул статью и я подуспокоился: ребята делают такие же DWH и так же обходятся без инструментов бигдаты.
Со всеми тезисами согласен — мы делаем так же: облачные DWH, инжест через пайплайны на питоне с использованием готовых библиотек, широкие таблицы в аналитическом слое.
Строим аналитическое хранилище данных с готовыми модулями ML на Google BigQuery: просто, быстро, доступно
epoch8.co
Machine learning and data analysis solutions
Computer vision systems. Product catalog solutions. Intelligent chatbots. Recommendation engines. Business analytics.
Ищем дата инженеров в агентсво Epoch8
Эпоха — агенство заказной разработки, мы помогаем клиентам работать с их данными: понимать что было (аналитика) и что будет (ML). Сейчас в штате 20 человек — до бюрократии ещё не доросли, фаундеры в прямой доступности, каждый может влиять на курс и политику компании.
В клиентах как большие е-коммерсы типа Leroy Merlin и Пятёрочки, так и стартапы: например, BelkaCar или Brickit.
Ищем дата инженеров в отдел аналитики. Обычно инженер сопровождает проект от начала и до конца:
⁃ приходиться разбираться с источниками данных у клиентов;
⁃ поднимать и поддерживать хранилища данных (DWH);
⁃ проектировать автономные пайплайны;
⁃ придумывать архитектуру аналитических сущностей и слоёв данных;
⁃ делать actionable дашборды, чтобы бизнес-пользователи клиентов могли принимать чёткие и взвешенные решения.
Кажется, сейчас такое называют Analytics Engineer и вроде есть даже какой-то хайп вокруг этого направления. Если встречали такое, буду рад обсудить @sashamikhailov
Порог входа относительно низкий: работать надо будет в команде с опытными товарищами. В любом случае ожидаем определённого уровня автономности — нужен какой-то опыт работы с данными (SQL, Python).
Нужные навыки:
⁃ Любовь к людям и умение общаться — придёться общаться с клиентами напрямую, снимать требования и презентовать результаты работы.
⁃ SQL — джойны, агрегации, оконные функции.
⁃ Python — писать ELT пайплайны так, чтобы ничего не взорвалось.
⁃ Кроме кода инженеры ещё пишут документацию: на сам код, на данные, на архитектуру решения.
Стэк технологий на каждом проекте свой, зависит от ограничений клиента; но есть наиболее частые решения:
⁃ DWH на BigQuery;
⁃ оркестрация на Prefect (на старых проектах — Airflow);
⁃ модели данных в dbt;
⁃ дашборды на Metabase.
Почему мне нравится работа в агентстве:
⁃ быстрый технический рост: до Эпохи я собирал один DWH три-четыре месяца, в Эпохе — 4 за полдгода;
⁃ большая насмотренность на проектах: приходят разные большие е-коммерсы и видишь что там под капотом;
⁃ вокруг коллеги той же профессии — а не единственный аналитик в отделе маркетинга;
⁃ на каждом следующем проекте замечаешь всё больше общих закономерностей — «набиваешь руку» поднимать DWH с нуля;
⁃ доступны все проекты агентства — всегда есть где подсмотреть оптимальное решение или спросить совета.
⁃ не зря год работы в заказной разработки считается за два в продуктовой;
⁃ рядом отдел МЛ: можно подглядывать, смотреть на насущные проблемы или спросить совета.
Условия:
⁃ вилки: 80-100К для джунов, 100-150К для миддлов. Зависит от опыта и навыков.
⁃ полная удалёнка. Если в Москве, то можно приходить на ежемесячные встречи и прочие офлайн-сборища.
⁃ раз в полгода общие вылазки (уже были Сочи, Алтай, Байкал) — надо же куда-то тратить освободившийся бюджет на офис :-)
Если есть вопросы и предложения — всегда рад пообщаться @sashamikhailov
Если вакансия заинтересовала, надо заполнить анкету в Airtable. В ответ вышлем небольшое тестовое на SQL. После тестового приглашаем на собеседование (возможно, даже там буду я).
====
Планирую вакансию пошерить дальше, если знаете что можно было добавить, уточнить или исправить — пишите. Очень поможете :)
Эпоха — агенство заказной разработки, мы помогаем клиентам работать с их данными: понимать что было (аналитика) и что будет (ML). Сейчас в штате 20 человек — до бюрократии ещё не доросли, фаундеры в прямой доступности, каждый может влиять на курс и политику компании.
В клиентах как большие е-коммерсы типа Leroy Merlin и Пятёрочки, так и стартапы: например, BelkaCar или Brickit.
Ищем дата инженеров в отдел аналитики. Обычно инженер сопровождает проект от начала и до конца:
⁃ приходиться разбираться с источниками данных у клиентов;
⁃ поднимать и поддерживать хранилища данных (DWH);
⁃ проектировать автономные пайплайны;
⁃ придумывать архитектуру аналитических сущностей и слоёв данных;
⁃ делать actionable дашборды, чтобы бизнес-пользователи клиентов могли принимать чёткие и взвешенные решения.
Кажется, сейчас такое называют Analytics Engineer и вроде есть даже какой-то хайп вокруг этого направления. Если встречали такое, буду рад обсудить @sashamikhailov
Порог входа относительно низкий: работать надо будет в команде с опытными товарищами. В любом случае ожидаем определённого уровня автономности — нужен какой-то опыт работы с данными (SQL, Python).
Нужные навыки:
⁃ Любовь к людям и умение общаться — придёться общаться с клиентами напрямую, снимать требования и презентовать результаты работы.
⁃ SQL — джойны, агрегации, оконные функции.
⁃ Python — писать ELT пайплайны так, чтобы ничего не взорвалось.
⁃ Кроме кода инженеры ещё пишут документацию: на сам код, на данные, на архитектуру решения.
Стэк технологий на каждом проекте свой, зависит от ограничений клиента; но есть наиболее частые решения:
⁃ DWH на BigQuery;
⁃ оркестрация на Prefect (на старых проектах — Airflow);
⁃ модели данных в dbt;
⁃ дашборды на Metabase.
Почему мне нравится работа в агентстве:
⁃ быстрый технический рост: до Эпохи я собирал один DWH три-четыре месяца, в Эпохе — 4 за полдгода;
⁃ большая насмотренность на проектах: приходят разные большие е-коммерсы и видишь что там под капотом;
⁃ вокруг коллеги той же профессии — а не единственный аналитик в отделе маркетинга;
⁃ на каждом следующем проекте замечаешь всё больше общих закономерностей — «набиваешь руку» поднимать DWH с нуля;
⁃ доступны все проекты агентства — всегда есть где подсмотреть оптимальное решение или спросить совета.
⁃ не зря год работы в заказной разработки считается за два в продуктовой;
⁃ рядом отдел МЛ: можно подглядывать, смотреть на насущные проблемы или спросить совета.
Условия:
⁃ вилки: 80-100К для джунов, 100-150К для миддлов. Зависит от опыта и навыков.
⁃ полная удалёнка. Если в Москве, то можно приходить на ежемесячные встречи и прочие офлайн-сборища.
⁃ раз в полгода общие вылазки (уже были Сочи, Алтай, Байкал) — надо же куда-то тратить освободившийся бюджет на офис :-)
Если есть вопросы и предложения — всегда рад пообщаться @sashamikhailov
Если вакансия заинтересовала, надо заполнить анкету в Airtable. В ответ вышлем небольшое тестовое на SQL. После тестового приглашаем на собеседование (возможно, даже там буду я).
====
Планирую вакансию пошерить дальше, если знаете что можно было добавить, уточнить или исправить — пишите. Очень поможете :)
Airtable
Airtable | Everyone's app platform
Airtable is a low-code platform for building collaborative apps. Customize your workflow, collaborate, and achieve ambitious outcomes. Get started for free.
❤1
За одну минуту о том, зачем нужны дата инженеры для машинного обучения. С ГИФКАМИ!
https://www.youtube.com/watch?v=efFuNYqg-YU&list=PLRKtJ4IpxJpDxl0NTvNYQWKCYzHNuy2xG
https://www.youtube.com/watch?v=efFuNYqg-YU&list=PLRKtJ4IpxJpDxl0NTvNYQWKCYzHNuy2xG
YouTube
MFML 048---Data engineering
It's okay if you thought this is how AI systems get data... but it's not!
Learn more here: http://bit.ly/quaesita_dataeng
Be sure to check out the rest of the MFML course playlist here: http://bit.ly/mf-ml
If you prefer to learn in bulk, you can get…
Learn more here: http://bit.ly/quaesita_dataeng
Be sure to check out the rest of the MFML course playlist here: http://bit.ly/mf-ml
If you prefer to learn in bulk, you can get…
у ребят из dbt появился свой подкаст, назвали актуальненько — Analtycs Engineering.
В первом эпизоде с Robert Chang из Airbnb, обсудили проблему управления метриками в компании. В Aribnb таких 12000 и чтобы как-то управляться они сделали систему Minerva как единый источник правды для всех метрик.
https://podcasts.apple.com/us/podcast/the-analytics-engineering-podcast/id1574755368
В первом эпизоде с Robert Chang из Airbnb, обсудили проблему управления метриками в компании. В Aribnb таких 12000 и чтобы как-то управляться они сделали систему Minerva как единый источник правды для всех метрик.
https://podcasts.apple.com/us/podcast/the-analytics-engineering-podcast/id1574755368
Apple Podcasts
The Analytics Engineering Podcast
Tech News Podcast · Updated Biweekly · Tristan Handy has been curating the Analytics Engineering Roundup newsletter since 2015, pulling together the internet’s best data science & analytics articles.
Tristan and co-host Julia Schottenstei…
Tristan and co-host Julia Schottenstei…
Data Engineering на Яндекс.Практикуме
Ура! Это наконец случилось! Практикум выкатил программу для инженеров данных! Пока в предзаказ — надо успевать, чтобы попасть в первый поток.
Теперь можно получить профильный курс и выпускников с релевантными навыками (я не как я — учился на аналитика, чтобы потом изучать инжиниринг данных уже на реальном проекте ¯\_(ツ)_/¯ )
Сразу о главном: 80 000₽ и полгода обучения.
Программа прям по-максимуму: концепции и архитектура данных, пайплайны, оркестрация, инфраструктура. Вот скопипастил полный список (хоть иди и учись заново, черт побери):
1. Знакомство с ETL / ELT, DWH / Data Lake, REST API → PostgreSQL
2. Продвинутый SQL: хранимые, тригеры, шардирование (!) и партиционирование
3. Разные базы данных: колоночные, No-SQL, графовые и key-value
4. Прочие источники данных: СУБД, файлики (Excel, хе-хе), API
5. Оркестрация: от крона до Airflow
6. Продвинутые пайплайны: параллельная обработка, Kafka / RabbitMQ / Celery.
7. Инфраструктура: Docker и Ansible.
8. Деплой на кластер: Kubernetes, Helm
9. Архитектура DWH: звезда, снежинка, Data Vault и Anchor Modeling.
10. BIG DATA: CAP теорема, Hadoop, MapReduce
11. BIG DATA часть 2: Spark, RDD (погуглил, спасибо!), Spark SQL
12. Облака: AWS, Яндекс, GCP, Azure, DigitalOcean
13. Безопасность: персданнные, аутентификация и авторизация, секреты
14. Логи и мониторинг: ELK, Grafana
15. Дипломный проект: всё серьёзно с CI/CD и data quality
Ура! Это наконец случилось! Практикум выкатил программу для инженеров данных! Пока в предзаказ — надо успевать, чтобы попасть в первый поток.
Теперь можно получить профильный курс и выпускников с релевантными навыками (я не как я — учился на аналитика, чтобы потом изучать инжиниринг данных уже на реальном проекте ¯\_(ツ)_/¯ )
Сразу о главном: 80 000₽ и полгода обучения.
Программа прям по-максимуму: концепции и архитектура данных, пайплайны, оркестрация, инфраструктура. Вот скопипастил полный список (хоть иди и учись заново, черт побери):
1. Знакомство с ETL / ELT, DWH / Data Lake, REST API → PostgreSQL
2. Продвинутый SQL: хранимые, тригеры, шардирование (!) и партиционирование
3. Разные базы данных: колоночные, No-SQL, графовые и key-value
4. Прочие источники данных: СУБД, файлики (Excel, хе-хе), API
5. Оркестрация: от крона до Airflow
6. Продвинутые пайплайны: параллельная обработка, Kafka / RabbitMQ / Celery.
7. Инфраструктура: Docker и Ansible.
8. Деплой на кластер: Kubernetes, Helm
9. Архитектура DWH: звезда, снежинка, Data Vault и Anchor Modeling.
10. BIG DATA: CAP теорема, Hadoop, MapReduce
11. BIG DATA часть 2: Spark, RDD (погуглил, спасибо!), Spark SQL
12. Облака: AWS, Яндекс, GCP, Azure, DigitalOcean
13. Безопасность: персданнные, аутентификация и авторизация, секреты
14. Логи и мониторинг: ELK, Grafana
15. Дипломный проект: всё серьёзно с CI/CD и data quality
в продолжение темы Data Engineer VS Data Scientist
на мега-крутом дашборде Ромы Бунина и Николая Валиотти можно посмотреть динамику спроса на дата-профессии. Мне интересно сравнить нашего брата дата инженера с хайповым дата саентистом.
Первое, что хочется отметить — зарплаты дата инженеров на втором месте.
Второе — количество вакансий больше на треть. Я бы здесь ожидал разницу побольше¹, но скидываю это на то, что дата саентистами называют всех подряд (т.н. термин-одеяло²).
(зачёркнуто) Было бы правильнее искать что-то типа ML Engineer, но таких было бы ещё меньше (и большая часть без зарплат, да).
УПД: в комментариях Рома отметил, что они учли это и «в выборку про DS попадали все вакансии, где есть слова ML, AI, DS и т.п.»
Весь проект и пост в канале Ромы Бунина (зацените ещё бизнес аналитиков ;-)
https://news.1rj.ru/str/revealthedata/498
¹ ощущения про «правильное» соотношение DE и MLE на проектах https://news.1rj.ru/str/data_days/158
² про термин-одеялко https://news.1rj.ru/str/rockyourdata/2816
на мега-крутом дашборде Ромы Бунина и Николая Валиотти можно посмотреть динамику спроса на дата-профессии. Мне интересно сравнить нашего брата дата инженера с хайповым дата саентистом.
Первое, что хочется отметить — зарплаты дата инженеров на втором месте.
Второе — количество вакансий больше на треть. Я бы здесь ожидал разницу побольше¹, но скидываю это на то, что дата саентистами называют всех подряд (т.н. термин-одеяло²).
(зачёркнуто) Было бы правильнее искать что-то типа ML Engineer, но таких было бы ещё меньше (и большая часть без зарплат, да).
УПД: в комментариях Рома отметил, что они учли это и «в выборку про DS попадали все вакансии, где есть слова ML, AI, DS и т.п.»
Весь проект и пост в канале Ромы Бунина (зацените ещё бизнес аналитиков ;-)
https://news.1rj.ru/str/revealthedata/498
¹ ощущения про «правильное» соотношение DE и MLE на проектах https://news.1rj.ru/str/data_days/158
² про термин-одеялко https://news.1rj.ru/str/rockyourdata/2816
Анализ вакансий из сообщества ODS
ребята спарсили вакансии из своего Слака и «повертели» данные с разных сторон:
⁃ количество вакансий
⁃ распределение по профессиям и уровням
⁃ динамика роста удалёнки
⁃ ну и зарплаты, конечно же (зачем же это всё затевалось!)
плюс всё в динамике: в каждом срезе сравнивают показатели с прошлыми годами.
радует, что становится больше вакансий дата аналитиков — кажется рынок начал понимать зачем нанимать кого-то ещё кроме «дата саентистов»
статья с графиками:
https://habr.com/ru/company/ods/blog/572264/
исходные данные для исследования:
https://github.com/egorborisov/jobs_article/blob/main/jobs_research.ipynb
ребята спарсили вакансии из своего Слака и «повертели» данные с разных сторон:
⁃ количество вакансий
⁃ распределение по профессиям и уровням
⁃ динамика роста удалёнки
⁃ ну и зарплаты, конечно же (зачем же это всё затевалось!)
плюс всё в динамике: в каждом срезе сравнивают показатели с прошлыми годами.
радует, что становится больше вакансий дата аналитиков — кажется рынок начал понимать зачем нанимать кого-то ещё кроме «дата саентистов»
статья с графиками:
https://habr.com/ru/company/ods/blog/572264/
исходные данные для исследования:
https://github.com/egorborisov/jobs_article/blob/main/jobs_research.ipynb
Как устроена структура данных в Notion
… и как обеспечить ту самую гибкость, благодаря которой Notion стал таким популярным)
https://www.notion.so/blog/data-model-behind-notion
кстати, они нанимают инженеров для работы с данными. Для тех, кому понравился пост выше.
https://www.notion.so/Software-Engineer-Data-Platform-San-Francisco-CA-79be6b036fb34fce88f663648ffdac62
… и как обеспечить ту самую гибкость, благодаря которой Notion стал таким популярным)
https://www.notion.so/blog/data-model-behind-notion
кстати, они нанимают инженеров для работы с данными. Для тех, кому понравился пост выше.
https://www.notion.so/Software-Engineer-Data-Platform-San-Francisco-CA-79be6b036fb34fce88f663648ffdac62
Notion
Exploring Notion's Data Model: A Block-Based Architecture | Notion
Notion’s data model enables the product’s most foundational component: blocks. Through blocks, we allow users more flexibility over their information.
Подброка подкастов про данные:
Паша Финкельштейн в Data Coffee
Паша в силу своей профессии хорошо рассказывает сложные концепции простым языком. Плюс благодаря своему опыту, у него очень широкий взгляд на отрасль в целом. Получилась такая хорошая общая беседа, обсудили в том числе зачем нужен Спарк и почему не делать всё через Пандас.
Петр Ермаков в Moscow Python
Петр — организартор курсов DataGym и один из первых участников сообщества ODS. Ещё одна общая хорошая беседа на тему зачем отрасли нужны сообщества.
Антон Карпов в Запуск Завтра
Антон — директор по безопасности Яндекса — рассказал про крупнейшую в мире (!) DDoS-атаку, которую успешно (!!) отразили внутренними инструментами без ковровых блокировок по IP (!!!). Интересно было послушать какие бывают атаки и как с ними работают. Оказывается, есть целая отрасль с организацией подобных атак и отдельных рынок для их заказа.
Паша Финкельштейн в Data Coffee
Паша в силу своей профессии хорошо рассказывает сложные концепции простым языком. Плюс благодаря своему опыту, у него очень широкий взгляд на отрасль в целом. Получилась такая хорошая общая беседа, обсудили в том числе зачем нужен Спарк и почему не делать всё через Пандас.
Петр Ермаков в Moscow Python
Петр — организартор курсов DataGym и один из первых участников сообщества ODS. Ещё одна общая хорошая беседа на тему зачем отрасли нужны сообщества.
Антон Карпов в Запуск Завтра
Антон — директор по безопасности Яндекса — рассказал про крупнейшую в мире (!) DDoS-атаку, которую успешно (!!) отразили внутренними инструментами без ковровых блокировок по IP (!!!). Интересно было послушать какие бывают атаки и как с ними работают. Оказывается, есть целая отрасль с организацией подобных атак и отдельных рынок для их заказа.
Apple Podcasts
15. Spark, Pandas, Scala и Zeppelin (гостевой)
Podcast Episode · Data Coffee · 09/04/2021 · 58m
Послушать:
советы по ML Ops из Moscow Python
сами по себе МЛ-модели — это малая доля работы всего этого вашего машин-лёрнинга. До этого надо ещё собрать данные, их почистить и подготовить (ну вы знаете); обучить модель «на коленке», а потом переписать этот код НОРМАЛЬНО, чтобы можно было запустить в прод. Код в продакшене должен быть читаемым, повторяемы и поддерживаемым — именно в этой области работают специалисты по т.н. ML Ops.
Слушать в iTunes и Overcast
Дата-парень (ex-Spotify) в подкасте от dbt labs
Erik Bernhardsson — автор Luigi; оказывается, Luigiзапустился чуть раньше, чем Airflow (нынешний стандарт оркестрации)
понравилось мнение, что дата-отрасль сейчас как веб в 2000-х: есть по сути одна профессия (типа веб-мастер), которая занимается всем. Никто на самом деле (пока) не знает как правильно и все пытаются на ходу с этим разобраться. (Ух, прям как дикий запад — вместе строим новый мир с нуля!)
Слушать в iTunes и Overcast
Артур Хачуян про философию работы с данными
Артур работает с большими данными, основал Tezaros (это там где 60000 тысяч Селениумов круглые сутки парсят лайки из соцсетей). Артур шарит в данных и имеет здравый взгляд на мир, в подкасте рассказывает где в работе с данными серая зона (например, геопарсинг), а где полная а-та-та (слив персданных другим компаниям).
Полезно было вспомнить, что цифровая грамотность это не навык-по-умолчанию — этому реально надо учить (а некоторых прям принудительно).
Слушать в iTunes и Overcast
#подкаст
советы по ML Ops из Moscow Python
сами по себе МЛ-модели — это малая доля работы всего этого вашего машин-лёрнинга. До этого надо ещё собрать данные, их почистить и подготовить (ну вы знаете); обучить модель «на коленке», а потом переписать этот код НОРМАЛЬНО, чтобы можно было запустить в прод. Код в продакшене должен быть читаемым, повторяемы и поддерживаемым — именно в этой области работают специалисты по т.н. ML Ops.
Слушать в iTunes и Overcast
Дата-парень (ex-Spotify) в подкасте от dbt labs
Erik Bernhardsson — автор Luigi; оказывается, Luigiзапустился чуть раньше, чем Airflow (нынешний стандарт оркестрации)
понравилось мнение, что дата-отрасль сейчас как веб в 2000-х: есть по сути одна профессия (типа веб-мастер), которая занимается всем. Никто на самом деле (пока) не знает как правильно и все пытаются на ходу с этим разобраться. (Ух, прям как дикий запад — вместе строим новый мир с нуля!)
Слушать в iTunes и Overcast
Артур Хачуян про философию работы с данными
Артур работает с большими данными, основал Tezaros (это там где 60000 тысяч Селениумов круглые сутки парсят лайки из соцсетей). Артур шарит в данных и имеет здравый взгляд на мир, в подкасте рассказывает где в работе с данными серая зона (например, геопарсинг), а где полная а-та-та (слив персданных другим компаниям).
Полезно было вспомнить, что цифровая грамотность это не навык-по-умолчанию — этому реально надо учить (а некоторых прям принудительно).
Слушать в iTunes и Overcast
#подкаст
Apple Podcasts
Moscow Python: подкаст о Python на русском: Moscow Python Podcast. Хорошие практики построения инфраструктуры ML-моделей (level:…
Show Moscow Python: подкаст о Python на русском, Ep Moscow Python Podcast. Хорошие практики построения инфраструктуры ML-моделей (level: all) - Sep 17, 2021
Истории об идемпотентности
Идемпотентность — это когда результат действия не зависит от количества его исполнений: запусти процесс один или сто раз — в любом случае получаешь тот же самый результат.
Важная концепция из мира работы с данными — тут миры дата-инженеров и бэкенд-разработчиков пересекаются.
Денис Исаев из Яндекс.Такси на примере реальных историй показывает, как проектировать процессы идемпотентными (и когда не надо :-). Есть ссылки на реализации API в Amazon AWS и Google Cloud.
Кейсы кажутся очень похожими на реальные:
1. Приложение шлёт одинаковые запросы с разницей в секунды
2. Приложение шлёт запрос с плохим интернетом (или моргнула сеть в инфраструктуре)
3. Мультизаказы с ключом идемпотентности, который генерируется на клиенте.
4. Ключи идемпотентности хорошо бы хранить на сервере (и не удалять при отмене заказа)
5. Soft-delete — вместо удаление строки в базе, просто ставить флаг deleted_at=now()
https://habr.com/ru/company/yandex/blog/442762/
Идемпотентность — это когда результат действия не зависит от количества его исполнений: запусти процесс один или сто раз — в любом случае получаешь тот же самый результат.
Важная концепция из мира работы с данными — тут миры дата-инженеров и бэкенд-разработчиков пересекаются.
Денис Исаев из Яндекс.Такси на примере реальных историй показывает, как проектировать процессы идемпотентными (и когда не надо :-). Есть ссылки на реализации API в Amazon AWS и Google Cloud.
Кейсы кажутся очень похожими на реальные:
1. Приложение шлёт одинаковые запросы с разницей в секунды
2. Приложение шлёт запрос с плохим интернетом (или моргнула сеть в инфраструктуре)
3. Мультизаказы с ключом идемпотентности, который генерируется на клиенте.
4. Ключи идемпотентности хорошо бы хранить на сервере (и не удалять при отмене заказа)
5. Soft-delete — вместо удаление строки в базе, просто ставить флаг deleted_at=now()
https://habr.com/ru/company/yandex/blog/442762/
Хабр
Стажёр Вася и его истории об идемпотентности API
Идемпотентность — звучит сложно, говорят о ней редко, но это касается всех приложений, использующих API в своей работе. Меня зовут Денис Исаев, и я руковожу одной из бэкенд групп в Яндекс.Такси....
Обзор технологий хранения больших данных — Максим Стаценко
https://youtu.be/xIQZ0v8ayD0
от «зачем нужно» до «с чем у меня ассоциируется каждая система». Вся информация основана на личном опыте Максима.
зачем нужна отдельная аналитическая база? можно проследить по типичным этапам в компании:
1. аналитика на той же базе, что и прод
2. п. 1 не справляется — делаем реплику базы
3. п. 2 не справляется — делаем отдельный аналитическую базу
варианты, где строить:
4. «сервер в подсобке»
5. аренда стойки в дата центре (под свой сервер)
6. аренда готового сервера
7. аренда виртуальной машины в облаке
8. managed services в облаке
скрытые косты. чем «собственнее» решение, тем больше затрат на вас: первоначальная настройка, обновление ПО и драйверов, замена железа, мониторинг и пр.
В облачных решениях можно просто «накликать» любые ресурсы — удобно для MVP и Proof of Concept. В любом случае всегда лучше поднять решение со своими данными и «погонять» его, чем просто читать презентации и обзоры систем в интернете.
https://youtu.be/xIQZ0v8ayD0
от «зачем нужно» до «с чем у меня ассоциируется каждая система». Вся информация основана на личном опыте Максима.
зачем нужна отдельная аналитическая база? можно проследить по типичным этапам в компании:
1. аналитика на той же базе, что и прод
2. п. 1 не справляется — делаем реплику базы
3. п. 2 не справляется — делаем отдельный аналитическую базу
варианты, где строить:
4. «сервер в подсобке»
5. аренда стойки в дата центре (под свой сервер)
6. аренда готового сервера
7. аренда виртуальной машины в облаке
8. managed services в облаке
скрытые косты. чем «собственнее» решение, тем больше затрат на вас: первоначальная настройка, обновление ПО и драйверов, замена железа, мониторинг и пр.
В облачных решениях можно просто «накликать» любые ресурсы — удобно для MVP и Proof of Concept. В любом случае всегда лучше поднять решение со своими данными и «погонять» его, чем просто читать презентации и обзоры систем в интернете.
YouTube
Максим Стаценко — Обзор технологий хранения больших данных. Плюсы, минусы, кому подойдет.
Ближайшая конференция — SmartData 2024, 4 сентября (online), 8–9 сентября, (Москва + трансляция).
Подробности и билеты: https://jrg.su/KFFBS7
— —
Доклад Максима будет про плюсы и минусы различных решений для хранения данных: облака или bare metal, Hadoop&CO…
Подробности и билеты: https://jrg.su/KFFBS7
— —
Доклад Максима будет про плюсы и минусы различных решений для хранения данных: облака или bare metal, Hadoop&CO…
data будни
Обзор технологий хранения больших данных — Максим Стаценко https://youtu.be/xIQZ0v8ayD0 от «зачем нужно» до «с чем у меня ассоциируется каждая система». Вся информация основана на личном опыте Максима. зачем нужна отдельная аналитическая база? можно проследить…
несколько слайдов из доклада Максима ↑
позволил себе чуток почеркать маркеров поверх, чтобы подсветить важное)
позволил себе чуток почеркать маркеров поверх, чтобы подсветить важное)