Кто это и зачем нужен
Data / ML Engineer превращает данные в работающие в проде ML-системы и надёжные пайплайны. Его миссия — не «обучить модель в ноутбуке» (это ближе к Data Scientist), а построить инженерную систему: данные текут чисто и вовремя (data engineering), модели обучаются, деплоятся и мониторятся в проде (ML engineering / MLOps). Это инженер, для которого данные и модели — такой же продакшн, как сервис.
Боль, которую он закрывает: «модель отлично работала на демо, в проде деградировала и никто не заметил». Между экспериментом в Jupyter и стабильной фичей в проде — пропасть инженерии: пайплайны, версионирование, мониторинг дрейфа. ML Engineer её закрывает.
Что ломается без него: пайплайны данных рвутся молча (мусор на входе → мусор в модели), модели живут «вручную», нет мониторинга качества и дрейфа, переобучение невоспроизводимо, ML-фичи нестабильны в проде.
День из жизни
Утро. Проверяет здоровье пайплайнов и качество данных (свежесть, полнота, аномалии). Смотрит метрики моделей в проде — нет ли дрейфа/деградации. День. Строит/чинит ETL/ELT-трансформацию, готовит признаки (feature engineering), настраивает обучение и деплой модели (воспроизводимо, версионированно). Думает о масштабе и стоимости вычислений. Вечер. Настраивает мониторинг дрейфа и алерты на качество, пишет карточку модели (что, на чём, метрики, ограничения), синкается с архитектором по data-архитектуре.
Ключевые навыки
Hard: Python, SQL, обработка данных (pandas/Spark), пайплайны (Airflow/dbt), хранилища (DWH, data lake), feature store, основы ML (метрики, обучение/инференс), MLOps (версионирование данных/моделей, деплой, мониторинг дрейфа), контейнеры/облако. Soft: инженерная дисциплина (воспроизводимость, тесты данных), внимание к качеству данных, системное мышление, баланс точность/стоимость/скорость, коммуникация с DS и продуктом.
Артефакты, которые пишет
- Пайплайны данных — ETL/ELT, воспроизводимые.
- Модель и метрики качества — обучение, оценка.
- Feature store — переиспользуемые признаки.
- Мониторинг дрейфа — алерты на деградацию.
- Карточка модели (model card) — назначение, данные, метрики, ограничения.
Архитектуру данных проектирует с архитектором (
C4,System Design Doc); готовность —Definition of Done.
Как ИИ/вайб-кодинг усиливает роль
- Генерация пайплайна. Промт: «Напиши dbt/Airflow пайплайн: из <сырых событий> собрать витрину <…> с инкрементальной загрузкой, тестами качества (not null, уникальность) и партиционированием.»
- Feature engineering. Промт: «Для задачи <предсказание churn> предложи признаки из доступных данных <…>, отметь риски утечки таргета (leakage) и как считать признаки одинаково на обучении и в проде.»
- Разбор метрик/дрейфа. Промт: «Метрики модели в проде поехали <данные>. Это дрейф данных, дрейф концепта или баг пайплайна? Как проверить и что делать?»
- Карточка модели. Промт: «Составь model card для модели <…>: назначение, данные обучения, метрики, ограничения, этические риски, условия применимости.»
- Оптимизация стоимости. Промт: «Пайплайн обучения дорогой <описание>. Где можно срезать стоимость/время без потери качества (сэмплинг, кэш фичей, дешевле инстансы)?»
Путь развития: Junior → Middle → Senior → Lead
- Junior: пишет трансформации и простые пайплайны по образцу, помогает с подготовкой данных.
- Middle: самостоятельно строит пайплайны и деплой моделей, настраивает мониторинг, владеет feature store.
- Senior: проектирует data/ML-платформу, MLOps-процессы, оптимизирует масштаб/стоимость, наставляет.
- Lead / Head of Data/ML: отвечает за data/ML-инфраструктуру и практики на компанию, рост команды.
Частые ошибки и как избежать
- «Работает в ноутбуке» = готово. → Прод требует пайплайна, версий, мониторинга, тестов данных.
- Утечка таргета (data leakage). → Признаки на обучении и в проде считай одинаково; не подсматривай будущее.
- Нет мониторинга дрейфа. → Модель деградирует молча; ставь алерты на качество и распределения.
- Невоспроизводимое обучение. → Версионируй данные, код, параметры; иначе результат не повторить.
- Мусор на входе. → Тесты качества данных в пайплайне; garbage in → garbage out.
Что освоить (мини-программа)
- Концепции: ETL/ELT, моделирование данных, feature store, метрики ML, MLOps (CI/CD для моделей, версионирование, мониторинг дрейфа), data leakage, масштаб/стоимость.
- Инструменты: Python, SQL, dbt/Airflow, Spark, MLflow/DVC, Docker, облако, Prometheus/Grafana.
- Почитать: «Designing Machine Learning Systems» Чип Хьюен; «Designing Data-Intensive Applications» Клеппман; материалы MLOps (Google).
Зарплатные ориентиры (RU)
- Junior Data/ML Engineer: ~120–190 тыс ₽/мес.
- Middle Data/ML Engineer: ~190–330 тыс ₽/мес.
- Senior Data/ML Engineer: ~330–550+ тыс ₽/мес.
Высоко оплачиваемая ниша; зависит от грейда, специфики (data vs ML), города и года — проверяй актуальное.
Маппинг на агента Laskoff
Прямого mapsTo нет, реализацию ведёт агент engineer (data/ML профиль) — пайплайны и код под спеку через TDD, а архитектуру данных проектирует с агентом architect. Воспроизводимость и «бэкап перед необратимым» (например, перезапись витрин/датасетов) — house-rule дома + guard-хук.
🤖 Промт-персона
Ты — опытный Data/ML Engineer (data engineering + MLOps). Помогаешь мне доводить данные и модели до прода как инженерную систему, а не ноутбук. Пайплайны делай воспроизводимыми и с тестами качества данных (garbage in → garbage out). Признаки на обучении и в проде считай одинаково, активно ищи утечку таргета (leakage). Модели версионируй и обязательно ставь мониторинг дрейфа и качества — деградация не должна проходить молча. Думай о масштабе и стоимости вычислений. По запросу выдавай пайплайны (dbt/Airflow), feature engineering, разбор дрейфа и model card.