Дата-инженер (Data Engineer) — это специалист, который занимается изучением и интерпретацией больших массивов данных. Его основная задача, как и подобает инженеру, выстроить необходимую инфраструктуру, чтобы обеспечить этот процесс.
Кто такой дата-инженер
Масса компаний занимается анализом Big Data и машинным обучением, чтобы прогнозировать определенные события и в соответствии с ними выстраивать свои бизнес-процессы.
Однако технология машинного обучения никогда бы не сможет работать без предварительной подготовки. Чтобы «переварить» громадные массивы информации, искусственному интеллекту нужна соответствующая инфраструктура и хранилища, то есть собственные базы данных. Вот именно ими-то и занимается дата-инженер. Если конкретнее, его работа состоит в том, чтобы наладить конвейер обработки данных (ETL): извлечение, преобразование и загрузку.
Что делают инженеры баз данных на рабочем месте:
- Строят пайплайны. Так называют последовательность обработки данных, которые проходят несколько стадий от извлечения до интерпретации. Для каждого этапа дата-инженер должен подобрать соответствующий инструмент (программный код) и настроить его должным образом;
- Масштабируют потоки данных. Дата-инженеру нужно оценить, какие загрузочные мощности понадобятся, чтобы можно было без задержек «скармливать» требуемый объем информации, а в случае увеличения потока ещё и расширить;
- Проектируют безопасные хранилища. Информацию, обработанную из большой сети, нужно где-то содержать без постороннего доступа. Дата-инженер продумывает, как это организовать;
- Настраивают мониторинг. В данном случае на плечах дата-инженера лежит сбор статистики о техническом состоянии системы (логи, метрики, графики загрузки и т.д.). В случае сбоя оповещения должны приходить автоматически.
Чем дата-инженер отличается от дата-сайентиста
Есть довольно много пересечений между инженерами баз данных и Data Scientists, в том числе в плане навыков и требований по трудоустройству. Но роли они всё-таки выполняют разные: дата-инженеры подготавливает инфраструктуру, а дата-сайентист строит модель-прототип под конкретные бизнес-задачи.
Проблема в том, что интерпретировать эту модель во внятное бизнес-решение (конечный продукт) вряд ли получится. И этим тоже занимается инженер баз данных.
Рассмотрим конкретный пример. Допустим, дата-сайентист хочет узнать, сколько денег геймеры тратят в мобильной онлайн-RPG и какие игровые предметы преимущественно покупают, чтобы сделать прогноз по стоимости/популярности инвентаря, как они будут влиять на игровой процесс, характеристики персонажей и скорректировать игровые механики. Для этого ему нужен массив данных по поведению игроков. Что в данном случае делает дата-инженер:
- С определенной периодичностью собирает данные с устройств геймеров;
- Собирает данные с логов сервера, которым пользуются игроки;
- Создает точку API, которая отразит историю событий по тому или иному пользователю. Например, геймер под ником «HellKnight_876» 78 уровня зашел в игру столько-то раз, в такое-то время, купил такие-то предметы, выполнил этот квест и т.д.
Для этого нужно создать пайплайн, собрать логи с приложения и сервера и соотнести с конкретным пользователем. Затем проанализированные логи объединяются в базу данных и передаются на общий сервер, откуда их можно запросить по API.
Дата-сайентист, опираясь на эти данные, строит модель-прототип поведения геймеров и выстраивает прогноз их поведения в игре.
Источник фото: Napkin AI, kedu.ru
Требования к квалификации дата-инженера
В первую очередь на такую должность годятся IT-специалисты с крепкими знаниями по части бекэнда, то есть проектирования серверной части ПО или приложений. Это означает:
- Владение языком запросов SQL на уровне не ниже Middle;
- Знание языка программирования Python (в нём создаются и интерпретируются все данные);
- Опыт работы с облачными платформами и соответствующий сертификат (Amazon Web Services, Microsoft Azure и другие);
- Знание устройства баз данных SQL и NoSQL;
- Владение Java/Scala;
- Знание инструментов аналитики Power BI или Tableau.
Конкретный набор скиллов зависит от работодателя, поскольку инструментарий бывает разным и потребности в обработке Big Data тоже разные. Здесь перечислены наиболее общие требования к квалификации инженера по базам данных.
Нужно еще знать, что дата-инженер — это командный игрок и тесно работает с другими специалистами. Помимо Data Scientist с ним взаимодействуют аналитики данных, бизнес-аналитики, разработчики. Так что softs kills в такой работе нужны изрядные:
- Коммуникативные способности;
- Понимание задач компании;
- Понимание бизнес-процессов в той области, где он работает;
- Непрерывное самообучение и готовность изучать новое;
- Знание английского языка на уровне не ниже Intermediate.
Как стать дата-инженером
В эту профессию приходят разными путями, но в первую очередь из аналитиков. Не обязательно это представители IT-аналитики, могут быть и другие сферы. Во вторую очередь — это разработчики, или конкретнее backend-разработчики, поскольку они вплотную работают с SQL запросами и специфическими языками программирования.
Старт в профессии можно получить, отучившись в вузе на технической или математической специальности, поскольку без базовых знаний по информатике и вычислительной технике здесь работать не получиться. Однако вузовское образование — ещё полдела. Нужны именно практические навыки в программировании, умение работать с базами данных.
Курсы для Data Engineer с нуля, подборка 2024 года
Обучиться Дата инжинирингу можно без соответствующего образования и опыта в IT или аналитике данных, хотя при этом учиться будет в разы сложнее: все-таки у профессии Data Engineer довольно высокий порог вхождения.
В 2024 году курсы для Дата-инженеров не так популярны, как Data Science, поскольку работодатели приветствуют универсализм навыков. Тем не менее, многие онлайн-школы дают возможность освоить с нуля новую перспективную профессию или повысить качество знаний.
1. Нетология. Курс «Дата-инженер с нуля до middle»
Стоимость: 4 083 руб./месяц
Срок обучения: от 19 месяцев
Документ: Диплом о профессиональной переподготовке
Курс предназначен как для новичков, так и сисадминов, а также fullstack и backend-разработчиков, которым нужны новые навыки в сфере аналитики данных.
Обучение строится на изучении теории (видеолекции, методические материалы), а затем закреплении теоретических знаний на практике (вебинары, домашние задания). Также за время обучения слушатели выполнят 6 масштабных проектов для портфолио.
В перечень задач входит разработка SQL-запросов, реализация процедуры ETL, настройка окружения и обучение модели, построение пайплайна в облачной среде и другие темы. Практику студенты отрабатывают в специальном тренажере на сайте онлайн-школы. Отдельная тема учебной программы посвящена карьерному планированию.
2. SkillFactory. Курс «Data Engineering»
Стоимость: 59 400 рублей
Срок обучения: 10 недель
Документ: Сертификат
Обучающая программа предназначена для специалистов с опытом Data Science, желающих расширить свои компетенции, а также для сисадминов и разработчиков. Иными словами, необходим соответствующий бэкграунд в IT.
Курс достаточно интенсивный, с большим количеством практики. Обучение строится на изучении лекций и выполнении практических заданий: на изучение каждого учебного модуля отводится неделя, все это время слушатели изучают видеолекции, оттачивают навыки на практике и общаются с преподавателем. В конце курса предстоит сдача итогового проекта по настройке пайплайнов и хранилища данных.
Минус курса в том, что обучение проводится в потоке и стартует по определенным датам, выбрать собственную дату занятий или объем нагрузки нельзя.
3. Skillbox. Курс «Профессия Data Engineer»
Стоимость: 6 332 руб./месяц
Срок обучения: 9 месяцев
Документ: Диплом о профессиональной переподготовке
Полный курс для обучения Дата-инженеров с нуля. Подходит для новичков, которые хотят освоить SQL, Python, а также программистов и начинающих аналитиков данных, желающих подтянуть технические знания.
Слушателей учат: тестировать код, работать с библиотеками и фреймворками Python (pandas, airflow, spark), обрабатывать данные Big Data, разворачивать нужную программную инфраструктуру под проект Data Science и многое другое.
В целом, курс представляет собой нечто среднее между Data Engineering и Data Science: много внимания уделено как техническим вопросам, так и аналитике — что весьма ценно для будущего специалиста. В общей сложности слушатели курса сдают 3 практических итоговых проекта, которые станут основой портфолио.
Также у Skillbox есть свой Центр карьеры, который помогает выпускникам с составлением резюме, собеседованиями, ищет места для стажировки или трудоустройства новичков.
4. NewProLab. Курс «DATA ENGINEER 13.0»
Стоимость: 129 000 рублей
Срок обучения: 2 месяца
Документ: Сертификат
Курс рассчитан на будущих инженеров данных с определенным опытом в IT: сисадминов, программистов. В числе входных требований: знание Python3, базовое знание Linux, Hadoop, SQL. Обучение достаточно интенсивное, поскольку завязано на практику. В общей сложности слушателям курса нужно выполнить 6 лабораторных работ.
Безусловный плюс курса — большое количество практических задач и наставничество. Минусы курса: не подходит для новичков в IT и дата-аналитиков. Кроме того, обучение ведется только со стартом потока, выбрать удобное время учебы нельзя.
5. Яндекс.Практикум. Курс «Инженер данных»
Стоимость: 18000 руб./месяц (95 000 руб.)
Срок обучения: 6,5 месяцев (нагрузка 12 часов в неделю)
Документ: Диплом о профессиональной переподготовке/Сертификат
Курс от учебного центра Яндекса предназначен для начинающих Data Scientist и бизнес-аналитиков, а также практикующих разработчиков и дата-инженеров. Есть порог вхождения: базовые знания SQL (синтаксис, вложенные запросы и их комбинирование, оконные функции, индексы для ускорения запросов) и Python (переменные, циклы, функции, условия, структуры данных, базовые навыки работы с Pandas, основы ООП).
В учебной программе 10 модулей, обучение достаточно интенсивное, несмотря на длительность курса. В конце — итоговый выпускной проект, в ходе которого слушатели самостоятельно выберут и будут реализовывать практические бизнес-задачи.
Плюсы курса: бесплатный вводный курс на 6,5 часов, практика, помощь кураторов и наставников, ориентированность на самостоятельное закрепление навыков, поддержка при трудоустройстве. Минусы: не подходит для новичков, обучение со стартом потока, довольно высокая нагрузка.
Вакансии для дата-инженеров на рынке труда
Самый простой способ проверить, насколько востребованы data engineer — это пройтись по любому сайту по поиску работы. На hh.ru в данный момент насчитывается более 1300 вакансий, хотя позиции для дата-сайентистов и дата-инженеров идут вперемешку. По всей видимости работодатели ещё не совсем ориентируются, какой именно специалист им нужен и ждут от соискателей полного набора компетенций.
Какие обычно условия предлагают:
- Полная занятость (хотя удаленные вакансии также имеются);
- Опыт от 1 года;
- Знания по части Python, баз данных и СУБД (таких как PostgreSQL);
- Владение инструментами и методами ETL.
Уровень зарплаты дата-инженеров в 2024 году
Несомненный и самый очевидный плюс на такой позиции — заработная плата. Хотя далеко не всегда она указывается, особенно для стажеров. Но это нормальная практика в IT-индустрии, где оплата труда складывается из конкретных знаний и умений кандидата.
Однако даже на позициях с минимальным опытом (1—3 года) работодатели готовы платить от 150000 рублей. Более опытные дата-инженеры могут рассчитывать уже на 350000 рублей. В зарубежных компаниях предлагают от 10000 USD.
Плюсы и минусы профессии дата-инженера
Плюсы | Минусы |
Высокая заплата | Размытые границы обязанностей |
Перспективность | Часто неясные и неочевидные требования к навыкам при найме |
Востребованность из-за дефицита специалистов | Мало вакансий в провинции |
Интересная работа для людей с аналитическим складом ума | Высокий порог вхождения (требуется опыт в IT) |