Данные из 254вакансии · 12 августа 2026

Как стать инженером данных: путь от нуля до первого оффера

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

Мурадов ЮрийАвтор·Мурадов Юрий·Аналитик SkillStat
ДЛПроверено·Денис Лукьянов·Технический редактор·Эксперт по Data Vault
Junior-вакансий сейчас
26
10% от всех 254 вакансии
Сложность входа
Средняя
10% junior-вакансий
Senior / Junior+Intern
4.2x
На каждого junior+intern — 4.2 senior
Навыков / вакансия
13
медиана по вакансиям
Всего вакансий
254
активных в Москве

Можно ли стать инженером данных с нуля

Да. По данным SkillStat, 10% вакансий инженера данных — уровня junior или стажёр. Это 26 вакансий прямо сейчас.

«С нуля» для инженера данных — это без коммерческого опыта, но с уже собранным маршрутом данных. К первому отклику нужны: SQL на уровне соединений, оконных функций и понимания цены запроса; Python, чтобы забрать данные из API, файла или очереди; и хотя бы один поток, который сам ходит по расписанию и сам сообщает, что сломался. Медиана требований — 13 навыков, один из самых длинных списков в данных: инженер данных стоит на стыке базы, кода и эксплуатации.

Вход трудный потому, что роль эксплуатационная. Выучить запрос легко. Трудно держать в голове, что источник поменял схему, вчерашняя загрузка встала на два часа, а витрина утром отдаст неполные цифры — этому не учат на курсе про Apache Airflow. Плюс структура рынка: на одного junior приходится 4.2 senior-вакансии. Платят тому, кто уже чинил упавший поток ночью и понимает, почему повторный запуск не должен создавать дубли.

Как стать инженером данных: короткий план

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

01
SQL и цена
SQL — в 84.3% вакансий инженера данных, самый частый навык профессии. Инженеру он нужен не для ответов бизнесу: соединения, оконные функции и план чтения решают, во что обойдётся пересчёт витрины на миллиардах строк.
02
Python и источники
Python — в 77.6% вакансий. Забрать данные из API, выгрузки, файла и очереди, разобрать формат, положить в таблицу. Библиотека pandas (18.1%) закрывает мелкую обработку, на объёмах её место занимает Apache Spark.
03
Хранилище и слои
DWH — в 30.3% вакансий, PostgreSQL — в 44.5%, ClickHouse — в 35.8%, Greenplum — в 21.3%. Разбери сырой слой, подготовленный и витрину, инкрементальную загрузку и то, почему одна таблица в разных слоях выглядит по-разному.
04
Оркестрация
Apache Airflow — в 55.9% вакансий, ETL — в 44.1%. Расписание, зависимости между задачами, повторный запуск без дублей, логи и понятное падение. Здесь заканчивается скрипт и начинается поток.
05
Проверки и объёмы
Свежесть, полнота, дубли, поломка схемы — проверки внутри потока, а не глазами по утрам. Дальше Apache Kafka (39.4%) для событий и Apache Spark (48.8%) для тяжёлой обработки.

Что учить инженеру данных первым

Не всё сразу. Вот очерёдность по частотности в вакансиях — от самого нужного к менее срочному.

Навык Все вакансии
SQL 84.3%
Python 77.6%
Apache Airflow 55.9%
Apache 49.2%
Apache Spark 48.8%
PostgreSQL 44.5%
ETL 44.1%
Apache Kafka 39.4%
Apache Hadoop 36.2%
ClickHouse 35.8%

«Все вакансии» — доля из 254 вакансии. Обновлено 12 августа 2026.

Полный список навыков с частотностью, связками и зарплатной премией — навыки инженера данных →

Roadmap инженера данных: от нуля до junior

Порядок опирается на частотность навыков по данным вакансий. Первые 4–5 этапов — минимум для первого оффера.

  1. 01
    SQL 84.3% вакансий

    Основа работы с данными: выборки, агрегации, JOIN, оконные функции.

    Подробнее →
  2. 02
    Python для данных 77.6% вакансий

    Pandas, NumPy — базовая обработка и трансформация датасетов.

    Подробнее →
  3. 03
    ETL и пайплайны 55.9% вакансий

    Построение потоков данных, оркестрация: Airflow, dbt.

    Подробнее →
  4. 04
    Хранилища данных (DWH) 44.5% вакансий

    Аналитические СУБД и хранилища: PostgreSQL, ClickHouse, BigQuery, Redshift.

    Подробнее →
  5. 05
    Распределённые системы 48.8% вакансий

    Spark, Kafka — обработка больших объёмов данных и стриминг.

    Подробнее →
  6. 06
    ML-фреймворки middle+

    Scikit-learn, PyTorch, TensorFlow — для ML/AI-инженеров.

    Подробнее →
  7. 07
    MLOps и деплой моделей 20.9% вакансий middle+

    Versioning (MLflow), сервинг моделей, мониторинг дрейфа — для ML-инженеров.

    Подробнее →
  8. 08
    Облака и управляемые сервисы middle+

    AWS/GCP/Azure: managed warehouses, ML-платформы, объектные хранилища.

    Подробнее →

Junior-вакансии инженера данных: что реально требуют работодатели

Срез построен на 254 активных вакансии.

Junior-вакансий
26
inc. стажировки
Доля junior
10%
от всего рынка
Senior / Junior+Intern
4.2x
соотношение
Навыков / вакансия
13
медиана
Распределение вакансий по грейдам
Intern — 1.5% (3)
Junior — 11.6% (23)
Middle — 24.1% (48)
Senior — 54.3% (108)
Lead — 8.5% (17)
Что значат эти цифры. 26 вакансий уровня junior и стажёра из 254 — вход умеренный. Особенность инженерии данных: чистых стартовых позиций компании открывают немного, потому что доверять новичку ночную загрузку страшно. Зато дверь широко открыта сбоку: аналитик, который устал ждать выгрузку и собрал её в Apache Airflow сам; backend-разработчик, который вёл интеграции; администратор базы. Всем им до инженера данных ближе, чем человеку сразу после курса.

Какие проекты сделать для портфолио

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

Пайплайн с расписанием и проверками качества
Средняя · 2–3 недели
Стек: Apache Airflow, Python, SQL, PostgreSQL
GitHub: Репозиторий: код задач, схема потока картинкой в README, docker-compose для локального запуска, лог одного успешного и одного упавшего прогона
Ценность: Главный артефакт роли: данные приходят сами, повторный запуск не плодит дубли, проверки останавливают поток до витрины
Слой витрин на dbt
Средняя · 1–2 недели
Стек: dbt, SQL, DWH, ClickHouse
GitHub: Модели преобразований, тесты на уникальность и непустоту ключей, документация витрины, схема зависимостей
Ценность: dbt — в части вакансий инженера данных: показывает, что SQL у тебя версионируется и тестируется, а не живёт в переписке
Поток событий
Высокая · 2–3 недели
Стек: Apache Kafka, Python, ClickHouse
GitHub: Отправитель, потребитель, разбор дублей и повторной доставки, запись в ClickHouse, README с описанием гарантий
Ценность: Apache Kafka — в 39.4% вакансий. Отделяет инженера от автора ночных выгрузок: здесь данные не ждут утра
Разбор большого объёма на Apache Spark
Высокая · 2 недели
Стек: Apache Spark, Python, Apache Hadoop, Apache Hive
GitHub: Задача обработки, замер до и после, объяснение, почему выбран этот способ соединения
Ценность: Apache Spark — в 48.8% вакансий, Apache Hadoop — в 36.2%: без объёмов эти строчки в резюме не читаются

Как оформить GitHub и резюме

Профиль GitHub
  • Репозиторий с потоком, а не с ноутбуком: код задач, схема зависимостей, конфиг расписания
  • В README — схема маршрута картинкой: источник, слои, витрина, расписание. Смотрящий не станет читать код, чтобы понять путь данных
  • Покажи лог падения и восстановление: инженера данных нанимают из-за поломок, а не из-за успешных прогонов
  • docker-compose в корне: стенд должен подниматься одной командой, иначе его никто не запустит
  • Отдельным файлом — проверки качества: что считается свежим, что дублем, что поломкой схемы
  • Git — в 28.7% вакансий инженера данных: осмысленные коммиты по шагам работы читаются лучше, чем один общий
Резюме без коммерческого опыта
  • Раздел «Проекты» вперёд опыта: рабочий поток с расписанием весит больше, чем год формулировки «работал с данными»
  • По каждому проекту: откуда данные, куда легли, как часто ходят, что проверяется и что происходит при сбое
  • Навыки — только те, что в проектах: SQL, Python. «Слышал про Apache Kafka» отсеивается первым же вопросом про дубли
  • Опыт аналитика, backend-разработки или администрирования базы — не «не то»: пиши его как работу с данными, интеграциями и загрузками
  • Объёмы и частота — валюта резюме: сколько источников, как часто обновление, где узкое место. Без них «строил ETL» ничего не значит
Слабое резюме

«Знаю SQL и Python, работал с Apache Airflow, строил ETL-процессы, есть опыт с ClickHouse»

Сильное резюме

«Собрал поток из трёх источников: выгрузка через API и два обновления из PostgreSQL. Оркестрация в Apache Airflow, ежечасное расписание, повторный запуск не создаёт дубли. Проверки на свежесть и потерю строк останавливают загрузку до витрины — за месяц поймали две смены схемы в источнике. Витрина в ClickHouse, аналитика забирает без ручных выгрузок. Код: [ссылка]»

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

Самостоятельно
Всё поднимается локально: PostgreSQL, ClickHouse, Apache Airflow и Apache Kafka в Docker, данные берутся из открытых API
На домашнем стенде не случается того, ради чего нанимают: источник не меняет схему сам, а объём не растёт до боли
Если пришёл из аналитики или разработки и SQL с Python уже рабочие, а не по учебнику
Курсы с ментором
Готовая песочница с потоками и ревью кода: чужой глаз ловит кривую загрузку, которую сам не видишь
Дорого, и часть программ учит запускать Apache Airflow, но молчит про повторный запуск, дубли и разбор ночного падения
Если базы SQL и Python нет и непонятно, в каком порядке брать хранилища, оркестрацию и объёмы
Вуз
Прикладная математика и информатика дают базу по базам данных, алгоритмам и распределённым системам — на объёмах это отличает инженера от сборщика скриптов
Четыре года; конкретных инструментов вроде dbt или Greenplum в программе не будет
Если выбираешь первое образование или целишься в большие данные и платформенные команды
Ловушка инженерии данных: коллекционирование инструментов. Apache Airflow, Apache Spark, Apache Kafka, dbt, Greenplum — список выглядит как план обучения, и по нему легко собрать десяток учебных запусков. Но платят за то, чего в этом списке нет: за поток, который переживёт смену схемы в источнике, двойной запуск и падение посреди ночи. Один сквозной маршрут от источника до витрины со всеми проверками стоит больше, чем пять инструментов на уровне знакомства.
Курсы · подобрано по данным рынка

Курсы для инженера данных

Сопоставили программы с реальным стеком из 254 вакансии — оценка соответствия рассчитана автоматически, это не реклама.

Все курсы →
Соответствие = доля ключевых навыков вакансий, которые закрывает программа курса. На основе 254 вакансии, обновлено автоматически.

Что спрашивают на собеседовании

SQL и производительность
Типовые вопросы
  • ·Оконные функции: посчитать нарастающий итог и найти последнее значение по ключу
  • ·Как найти дубли после загрузки и откуда они берутся
  • ·Чем соединение двух больших таблиц отличается от соединения большой и маленькой
  • ·Почему один и тот же запрос в PostgreSQL и ClickHouse ведёт себя по-разному
Как показать проектом

Витрина из портфолио: покажи запрос, который переписал после того, как он стал долгим

Оркестрация и повторный запуск
Типовые вопросы
  • ·Что происходит при повторном запуске задачи и почему это важно
  • ·Как в Apache Airflow задать зависимости и что делать с задачей, которая не завершилась
  • ·Инкрементальная загрузка: как понять, какие строки новые
  • ·Загрузка упала на середине — как довести данные до целостного состояния
Как показать проектом

Поток с расписанием: расскажи, что будет при двойном запуске

Хранилище и слои
Типовые вопросы
  • ·Зачем нужны слои: сырой, подготовленный, витрина
  • ·Чем ClickHouse отличается от PostgreSQL и когда что берёшь
  • ·Что делать, когда источник поменял схему
  • ·Как понять, что витрина отдаёт неполные данные
Как показать проектом

Слой витрин на dbt: объясни, почему разложил именно так

Качество данных
Типовые вопросы
  • ·Какие проверки ставишь в поток и на каком шаге
  • ·Свежесть данных: как измеряешь и кому сообщаешь
  • ·Данные разошлись с источником — порядок разбора
  • ·Останавливать поток при провале проверки или пускать дальше
Как показать проектом

Проверки из репозитория: покажи, что именно ломает загрузку

Объёмы и события
Типовые вопросы
  • ·Зачем Apache Spark, если есть SQL
  • ·Apache Kafka: что такое повторная доставка и как с ней жить
  • ·Обработка стала дорогой — где ищешь причину
  • ·Пакетная загрузка или поток событий: как выбираешь
Как показать проектом

Разбор на Apache Spark: замер до и после

Сколько времени нужно, чтобы стать инженером данных

Минимум
8–12 мес
Из аналитики или backend-разработки: SQL и код уже рабочие, добираются оркестрация, хранилище и эксплуатация
Медиана
14–20 мес
Самостоятельно, с нуля, по 2–3 часа в день, со сквозным потоком вместо конспектов
Реалистично
18–26 мес
При совмещении с работой и без SQL в фоне: база, код и эксплуатация набираются по очереди, а не параллельно

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

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

Ошибки новичков

Учат Apache Airflow вместо SQL

Почему мешает: SQL — в 84.3% вакансий инженера данных, самый частый навык. Оркестратор запускает то, что написано на SQL: если запрос плох, расписание сделает его плохим регулярно

Как исправить: Сначала соединения, оконные функции и цена запроса на больших таблицах. Оркестрация — сверху, а не вместо

Пайплайн, который нельзя запустить дважды

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

Как исправить: Разбери повторяемость на своём проекте: ключ загрузки, перезапись окна вместо дозаписи, проверка на дубли после

Нет проверок качества

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

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

Собирают зоопарк инструментов

Почему мешает: Apache Spark, Apache Kafka, Apache Hadoop и dbt в резюме без объёмов и потока читаются как список из вакансии, а не как опыт

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

Игнорируют Docker и Git

Почему мешает: Docker — в 20.9% вакансий, Git — в 28.7%, CI/CD — в 20.9%. Инженер данных живёт в проде: код, который поднимается только на твоём ноутбуке, никому не нужен

Как исправить: Подними стенд в Docker, держи код в Git, добавь простую проверку при сборке

Считают, что данные приходят чистыми

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

Как исправить: Возьми открытый API и поживи с ним месяц: увидишь пропуски, смену формата и задержки своими глазами

Не смотрят, куда данные идут дальше

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

Как исправить: Опиши витрину так, чтобы аналитик взял её без вопросов: что за строка, за какой период, когда обновилась

Портфолио из разовой выгрузки

Почему мешает: Ноутбук, который однажды прочитал csv и построил график, — работа аналитика. Расписания, повторяемости и проверок в нём нет

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

Как SkillStat считает данные

Источник: 254 вакансии в московском сегменте. Навыки и грейды извлекаются автоматически из текста каждой вакансии.

Грейды: определяются по требованиям вакансии — уровню опыта, упоминанию «junior», «intern», «стажёр». Это рыночная оценка объявления.

Сложность входа: рассчитывается по доле junior-вакансий и медиане навыков на junior-уровне. Это индикатор, а не гарантия.

Обновление: данные пересчитываются регулярно. Текущий срез — 12 августа 2026.

Частые вопросы

Можно ли стать инженером данных с нуля?
Можно, но путь длиннее, чем в аналитике. По данным SkillStat, junior и стажёров среди вакансий инженера данных — 26 из 254. Причина простая: новичку не отдают ночную загрузку, от которой зависят отчёты всей компании. Самый частый вход — сбоку: из аналитики, backend-разработки или администрирования баз, где SQL и доступ к источникам уже есть.
Чем инженер данных отличается от аналитика данных?
Предметом работы. Аналитик отвечает на вопрос бизнеса: почему упала конверсия, что с удержанием. Инженер данных делает так, чтобы этот вопрос было на чём считать: собирает маршрут от источника до витрины, ставит расписание и проверки. Разница видна по стеку: у инженера Apache Airflow (55.9%), ETL (44.1%) и Apache Spark (48.8%), у аналитика на их месте метрики и визуализация. Общий у них SQL — но нужен он им для разного.
Чем инженер данных отличается от архитектора данных?
Масштабом решения. Инженер строит и держит конкретные потоки и витрины. Архитектор решает, где вообще рождается сущность, кто ею владеет и по каким правилам её можно менять, — и делает это на уровне всей компании, а не одного потока. В архитектуру данных обычно приходят из инженерии, а не наоборот.
Чем инженер данных отличается от администратора баз данных?
Направлением заботы. Администратор баз отвечает за саму СУБД: доступность, копии, репликацию, скорость запросов. Инженер данных отвечает за движение данных между системами — его волнует не то, жив ли PostgreSQL, а то, дошла ли ночная загрузка и не поменялся ли формат в источнике. PostgreSQL встречается у обоих, но у администратора это рабочее место, а у инженера — одна из точек маршрута.
Нужен ли SQL инженеру данных?
Это самый частый навык профессии: 84.3% вакансий (214 из 254). И нужен он не так, как аналитику. Аналитик пишет запрос, чтобы ответить на вопрос, и запрос живёт один день. Инженер пишет запрос, который будет выполняться каждый час год подряд на растущей таблице, — поэтому кроме результата важна цена: как соединяются большие таблицы, что читается с диска, во что обойдётся пересчёт витрины.
Нужен ли Python?
Да, это второй по частоте навык: 77.6% вакансий инженера данных. Веб-разработка тут ни при чём. Python нужен, чтобы забрать данные из API, разобрать файл, описать задачу в Apache Airflow и написать проверку качества. Библиотека pandas (18.1%) закрывает мелкую обработку, на больших объёмах её место занимает Apache Spark.
Обязателен ли Apache Airflow?
Практически: Apache Airflow — в 55.9% вакансий инженера данных. Но учить надо не кнопки, а идею: расписание, зависимости между задачами, повторный запуск без дублей, видимое падение. Компания может использовать другой оркестратор — принципы переносятся. Строчка в резюме без понимания повторного запуска не переносится никуда.
Что такое DWH и зачем он?
DWH — хранилище данных со слоями: сырой слой, подготовленный и витрины. Встречается в 30.3% вакансий инженера данных. Слои нужны, чтобы пересобрать витрину, не бегая заново к источнику, и чтобы поломка в одном месте не растекалась по всем отчётам. Без понимания слоёв инженер складывает всё в одну таблицу и через полгода не может объяснить, откуда взялась цифра.
Какую базу учить первой: PostgreSQL или ClickHouse?
PostgreSQL — в 44.5% вакансий, ClickHouse — в 35.8%, Greenplum — в 21.3%. Начинай с PostgreSQL: на ней проще понять транзакции, индексы и план запроса. ClickHouse и Greenplum берут для аналитических нагрузок, и их поведение объяснимо только после того, как понял обычную строчную базу. Учить все три сразу — потеря времени.
Нужны ли Apache Spark и Apache Hadoop?
Зависит от компании. Apache Spark — в 48.8% вакансий инженера данных, Apache Hadoop — в 36.2%, Apache Hive — в 19.3%. Это стек больших контуров: банки, телеком, крупный ритейл. Для первой работы важнее сквозной поток на SQL, Python и Apache Airflow. Apache Spark добавляй, когда упёрся в объём, который не тянет обычная база, — тогда он объясним, а не просто есть в резюме.
Нужны ли Docker и CI/CD?
Docker — в 20.9% вакансий инженера данных, CI/CD — в 20.9%, Git — в 28.7%. Отдельной темой их учить не надо, но поток должен подниматься одной командой и жить в репозитории. Инженер данных работает в проде: код, который запускается только на твоём ноутбуке, до расписания не доживёт.
Нужна ли высшая математика?
Нет. Это не про машинное обучение: модели строит другой человек, инженер данных приносит ему данные вовремя и в нужном виде. Полезнее алгоритмическая аккуратность и понимание, что происходит с памятью и диском при соединении двух больших таблиц.
Можно ли перейти в инженерию данных из аналитики?
Это самый короткий путь. У аналитика уже есть SQL, доступ к источникам и понимание, откуда берутся цифры. Не хватает обычно трёх вещей: кода за пределами ноутбука, расписания и мысли, что данные надо проверять до того, как их увидит отчёт. Собери свою выгрузку в поток на Apache Airflow — это и будет заявка на переход.
Какие проекты сделать для портфолио?
Один сквозной поток вместо трёх учебных: источник, загрузка, преобразование, расписание, проверки, витрина. Ключевые навыки профессии для него: SQL, Python, Apache Airflow. Дальше можно добавить слой витрин на dbt или события через Apache Kafka. Ноутбук с графиком по csv-файлу в портфолио инженера данных не считается — это работа аналитика.
Когда начинать откликаться?
Когда поток из портфолио пережил повторный запуск, падение и смену данных в источнике, и по каждому случаю можешь объяснить, что произошло. Junior-позиций 26 вакансий — параллельно смотри вакансии ETL-разработчика и разработчика DWH, а также внутренний переход из аналитики.
Сколько зарабатывает начинающий Инженер данных?
Ориентир для junior — 128 250–185 250 ₽ при медиане по профессии 285 000 ₽. Разбивка по грейдам и динамика — на странице зарплат инженера данных.
Где посмотреть навыки инженера данных?
На странице навыков инженера данных — частотность по 254 вакансии, разбивка по грейдам и связки инструментов.