Найти тему
KEDU.ru

Дата-инженер (инженер баз данных): что это за профессия, как им стать

Оглавление

Инженер баз данных (Database Engineer) — это специалист, который занимается изучением и интерпретацией больших массивов данных. Его основная задача, как и подобает инженеру, выстроить необходимую инфраструктуру, чтобы обеспечить этот процесс.

Кто такой дата-инженер

Designed by freepik
Designed by freepik

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

Однако технология машинного обучения никогда бы не сможет работать без предварительной подготовки. Чтобы «переварить» громадные массивы информации, искусственному интеллекту нужна соответствующая инфраструктура и хранилища, то есть собственные базы данных. Вот именно ими-то и занимается дата-инженер. Если конкретнее, его работа состоит в том, чтобы наладить конвейер обработки данных (ETL): извлечение, преобразование и загрузку.

Что делают инженеры баз данных на рабочем месте:

  1. Строят пайплайны. Так называют последовательность обработки данных, которые проходят несколько стадий от извлечения до интерпретации. Для каждого этапа дата-инженер должен подобрать соответствующий инструмент (программный код) и настроить его должным образом;
  2. Масштабируют потоки данных. Дата-инженеру нужно оценить, какие загрузочные мощности понадобятся, чтобы можно было без задержек «скармливать» требуемый объем информации, а в случае увеличения потока ещё и расширить;
  3. Проектируют безопасные хранилища. Информацию, обработанную из большой сети, нужно где-то содержать без постороннего доступа. Дата-инженер продумывает, как это организовать;
  4. Настраивают мониторинг. В данном случае на плечах дата-инженера лежит сбор статистики о техническом состоянии системы (логи, метрики, графики загрузки и т.д.). В случае сбоя оповещения должны приходить автоматически.Масса компаний занимается анализом Big Data и машинным обучением, чтобы прогнозировать определенные события и в соответствии с ними выстраивать свои бизнес-процессы.

Однако технология машинного обучения никогда бы не сможет работать без предварительной подготовки. Чтобы «переварить» громадные массивы информации, искусственному интеллекту нужна соответствующая инфраструктура и хранилища, то есть собственные базы данных. Вот именно ими-то и занимается дата-инженер. Если конкретнее, его работа состоит в том, чтобы наладить конвейер обработки данных (ETL): извлечение, преобразование и загрузку.

Что делают инженеры баз данных на рабочем месте:

  1. Строят пайплайны. Так называют последовательность обработки данных, которые проходят несколько стадий от извлечения до интерпретации. Для каждого этапа дата-инженер должен подобрать соответствующий инструмент (программный код) и настроить его должным образом;
  2. Масштабируют потоки данных. Дата-инженеру нужно оценить, какие загрузочные мощности понадобятся, чтобы можно было без задержек «скармливать» требуемый объем информации, а в случае увеличения потока ещё и расширить;
  3. Проектируют безопасные хранилища. Информацию, обработанную из большой сети, нужно где-то содержать без постороннего доступа. Дата-инженер продумывает, как это организовать;
  4. Настраивают мониторинг. В данном случае на плечах дата-инженера лежит сбор статистики о техническом состоянии системы (логи, метрики, графики загрузки и т.д.). В случае сбоя оповещения должны приходить автоматически.

Чем дата-инженер отличается от дата-сайентиста

Есть довольно много пересечений между инженерами баз данных и Data Scientists, в том числе в плане навыков и требований по трудоустройству. Но роли они всё-таки выполняют разные: дата-инженеры подготавливает инфраструктуру, а дата-сайентист строит модель-прототип под конкретные бизнес-задачи.

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

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

  • С определенной периодичностью собирает данные с устройств геймеров;
  • Собирает данные с логов сервера, которым пользуются игроки;
  • Создает точку API, которая отразит историю событий по тому или иному пользователю. Например, геймер под ником «HellKnight_876» 78 уровня зашел в игру столько-то раз, в такое-то время, купил такие-то предметы, выполнил этот квест и т.д.

Для этого нужно создать пайплайн, собрать логи с приложения и сервера и соотнести с конкретным пользователем. Затем проанализированные логи объединяются в базу данных и передаются на общий сервер, откуда их можно запросить по API.

Дата-сайентист, опираясь на эти данные, строит модель-прототип поведения геймеров и выстраивает прогноз их поведения в игре.

Как стать дата-инженером

Designed by senivpetro/freepik
Designed by senivpetro/freepik

В эту профессию приходят разными путями, но в первую очередь из аналитиков. Не обязательно это представители IT-аналитики, могут быть и другие сферы. Во вторую очередь — это разработчики, или конкретнее backend-разработчики, поскольку они вплотную работают с SQL запросами и специфическими языками программирования.

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

Онлайн-курсы для дата-инженеров с нуля

Можно ли выучиться Data Engineering без специальных знаний? Это будет проблематично, такие курсы можно рассматривать как способ повышения квалификации. И желательно к этому моменту уже разбираться в SQL и знать на достаточном уровне Python.

Хотя есть варианты в онлайн-школах (например, Skillbox), где всему обучают с нуля. Этот путь длиннее, но логичнее: сначала вы становитесь Data Scientist, а затем идёте в дата-инженеры.

Вакансии инженеров баз данных на рынке труда

Самый простой способ проверить, насколько востребованы data engineer — это пройтись по любому сайту по поиску работы. На hh.ru в данный момент насчитывается более 1300 вакансий, хотя позиции для дата-сайентистов и дата-инженеров идут вперемешку. По всей видимости работодатели ещё не совсем ориентируются, какой именно специалист им нужен и ждут от соискателей полного набора компетенций.

Какие обычно условия предлагают:

  1. Полная занятость (хотя удаленные вакансии также имеются);
  2. Опыт от 1 года;
  3. Знания по части Python, баз данных и СУБД (таких как PostgreSQL);
  4. Владение инструментами и методами ETL.

Уровень зарплаты инженеров баз данных в 2022 году

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

Однако даже на позициях с минимальным опытом (1—3 года) работодатели готовы платить от 150000 рублей. Более опытные дата-инженеры могут рассчитывать уже на 350000 рублей. В зарубежных компаниях предлагают от 10000 USD.