Найти в Дзене
Трофим Воробьев

Семеро с ложкой – один с сошкой. Как инженера данных превратили в раба

Автор статьи является инженером данных, поэтому об этой специальности и пойдет речь. Но, более чем уверен, что специальностей и вакансий с подобными проблемами предостаточно. И так, рассмотрим пример подобных вакансий. Заранее скажу: к Анастасии претензий нет. Она делает свою работу - ищет человека под техзадание, которое ей дали. Вопрос к тем, кто это техзадание составлял. Давайте посмотрим, кого же они ищут. Звучит обычно. Но давайте читать между строк. Смотрим раздел "Задачи": ▪️Разработка низкоуровневой архитектуры систем больших данных;
▪️Разработка документации;
▪️Разработка программного кода;
▪️Разработка Unit-тестов;
▪️Сборка установочных пакетов;
▪️Оптимизация кода;
▪️Исправление дефектов;
▪️Выпуск обновлений. Знаете, что здесь перечислено? Весь жизненный цикл данных и систем под эти данные от начала до конца. Это не Data Engineer. Это: Семеро с ложкой - один с сошкой. Только ложки здесь - это отдельные специалисты в нормальных компаниях. А сошка - это кандидат, который долже
Оглавление

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

И так, рассмотрим пример подобных вакансий.

-2
-3

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

Давайте посмотрим, кого же они ищут.

"Нужен Data Engineer с опытом от 4 лет"

Звучит обычно. Но давайте читать между строк.

Задачи: всё, что движется

Смотрим раздел "Задачи":

▪️Разработка низкоуровневой архитектуры систем больших данных;
▪️Разработка документации;
▪️Разработка программного кода;
▪️Разработка Unit-тестов;
▪️Сборка установочных пакетов;
▪️Оптимизация кода;
▪️Исправление дефектов;
▪️Выпуск обновлений.

Знаете, что здесь перечислено? Весь жизненный цикл данных и систем под эти данные от начала до конца.

Это не Data Engineer. Это:

  • Системный архитектор (проектирует архитектуру)
  • Технический писатель (пишет документацию)
  • Data Engineer (пишет код ETL)
  • Тестировщик (пишет тесты)
  • DevOps (собирает пакеты, деплоит)
  • DBA (архитектура и манипуляции с БД)
  • Release-инженер (выпускает обновления)

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

Требования: стэк на 10 человек

Дальше - веселее. Смотрим требования:

▪️Опыт от 4-х лет коммерческой разработки и от 2-х лет - разработка систем, которые вышли в промышленную эксплуатацию;
▪️Опыт от 2-х лет с BigData;
▪️Опыт и знание стека Python 3.5+, Spark 2.2+, Hadoop, Hive, Airflow, Kubernetes (K8S), SQLAlchemy, PostgreSQL, Greenplum, PyTest, Unittest, Flake8, PyLint, Black, Docker, Git, GitLab, CI/CD, Shell, Linux..

Давайте посчитаем.

Блок 1: Big Data стек

  • Airflow, Spark, Hadoop, Hive - это технологии для распределённых вычислений. Ими занимаются Big Data инженеры. Hadoop - это целый мир со своим блэк-джеком и медом.

Блок 2: Инфраструктура

  • Kubernetes, Docker, GitLab CI/CD - это DevOps/Platform инженеры.

Блок 3: ETL

  • Airflow, PostgreSQL, Greenplum, SQLAlchemy - это наконец-то DE. Хотя Блок 1, по сути, тоже DE, но как правило за Hadoop и GP отвечают разные команды. Слишком много компетенций для одного сотрудника.

Блок 4: Качество кода

  • PyTest, Unittest, Flake8, PyLint, Black — это тестировщики и разработчики, следящие за качеством. В обязанности DE такое, может быть и может входить, но максимум на уровне code review или линтеров в гите.

И это мы ещё не дошли до мягких навыков.

"Мягкие" требования, которые на самом деле жёсткие

▪️Умение давать и принимать обратную связь;
▪️Опыт работы с бизнес требованиями (сбор, формирование требований, анализ);
▪️Опыт работы в условиях постоянно меняющихся требований.

Перевод на русский:

  • Вы будете общаться с заказчиком, который не знает, чего хочет.
  • Вы будете сами собирать требования - потому что ПМа в проекте нет.
  • Требования будут меняться каждый день - и вы должны быть к этому готовы, руководство не знает, чего хочет.

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

Что не так с этой вакансией?

Да, собственно, все. Но я не говорю, что таких людей не бывает. Они есть. И у них пока что нет официального названия, наподобие Data Engineer. Их можно назвать Senior+ универсалы, которые и рыбку съедят, и единолично вам контур данных организуют. Но:

  1. Таких людей единицы. Реально единицы.
  2. Они стоят дорого. Очень дорого. Не 280 000. И даже не 500 000.
  3. Даже они не смогут делать всё сразу. Человек не может одновременно писать код, проектировать архитектуру, тестировать, выпускать релизы и общаться с заказчиком. В каждый определенный момент времени человек может делать лишь что-то одно. Поэтому сроки выполнения работ существенно увеличиваются относительно правильно организованной сбалансированной команды.
  4. Он ваш начальник, а не вы его. Когда вы берете человека, который в одно лицо будет зарабатывать вам деньги - готовьтесь к тому, что теперь он ваш начальник, а не вы его. Запросит вместо 500 000 чуть больше, скажем, 1 200 000 - и у вас будет неприятный выбор: либо дать ему эти деньги, либо обанкротиться.

Почему так происходит?

Причина 1. Экономия
Компании хотят нанять одного человека вместо трёх. Это дешевле. Им, условно, проще написать «супергерой за 300к», чем платить 200к DE + 200к DevOps + 200к аналитику. Да только вот зп взяли из 2015 года, хотя на дворе 2026.

Причина 2. Незрелость процессов
В компаниях, которые ищут таких универсалов, обычно нет чёткого разделения ролей. Там нет выделенного DevOps, нет выделенного аналитика, нет выделенного тестировщика. Всё держится на энтузиазме одного-двух человек.

Причина 3. Недопонимание роли DE
Многие до сих пор не понимают, чем Data Engineer отличается от аналитика, от DevOps, от DBA и т.д. Им кажется: «работает с данными - значит, делает всё». Из серии "почини мне телефон, тыжпрограммист"

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