Назад
7 дней назад

Data инженер (Телеком)

Формат работы
remote (только Russia)
Тип работы
project
Грейд
middle
Страна
Russia
vacancy_detail.hirify_telegram_tooltipВакансия из Telegram канала -

Мэтч & Сопровод

Покажет вашу совместимость и напишет письмо

Описание вакансии

TL;DR
Data инженер (Scala/Spark): разработка распределённых приложений и production-пайплайнов обработки данных для телеком-проекта с акцентом на Apache Spark, Scala, Airflow и работу с хранилищами. Focus on оптимизации Spark-задач, проектировании витрин и SQL-запросов, интеграции Web API и обеспечении целостности и идемпотентности данных.
ID 3626
Data инженер
Middle

Прием откликов до 22.09.2026, 12:00
Телеком
РФ

Кол-во специалистов
1
Длительность проекта
с 01.10.2026 по 31.07.2027
Объем участия в проекте
Высокая нагрузка
~160 ч/мес
Формат взаимодействия
Удаленно
Требуемое гражданство специалиста
Россия
Доступность специалиста
UTC +3

Обязательные требования
ВАЖНО! ТРЕБУЕТСЯ СООТВЕТСТВИЕ ВСЕМ ТРЕБОВАНИЯМ НИЖЕ:
- Опыт работы в роли Data Engineer от 1.5 – 2 года.

- Apache Spark: Опыт разработки распределенных приложений на Scala от 1.5 лет. Понимание архитектуры Spark (driver, executor, стадии, задачи, shuffling, data locality). Уверенное владение DataFrames/Datasets API, Spark SQL. Опыт работы с форматами данных (Parquet, ORC, Avro, JSON, CSV), чтение/запись данных в HDFS, Hive и реляционные базы данных через JDBC. Практический опыт оптимизации: partitioning, repartition/coalesce, broadcast variables, accumulators, cache/persist. Умение анализировать и профилировать задачи через Spark UI и логи Yarn.

Кандидат на словах подтверждает практический опыт работы со Spark на Scala. Объясняет базовые концепции (driver, executor, стадии, RDD vs DataFrame), принципы shuffling и broadcast join, особенности форматов Parquet/ORC, а также рассказывает, как разбирал ошибки и отслеживал выполнение задач через Spark UI / логи Yarn.

- Язык Scala: Уверенное знание структур данных и коллекций (List, Seq, Map, Set), применение функций высшего порядка (map, flatMap, filter, foldLeft). Владение концепциями ООП и ФП на Scala: traits, case classes, tuples, pattern matching, обработка ошибок в функциональном стиле (Option, Either, Try). Опыт сборки проектов с помощью sbt или maven (включая плагины assembly / fat-jar), управление зависимостями.

- Apache Airflow: Практический опыт разработки и документирования production DAG. Настройка расписания (schedule_interval, cron), атрибутов catchup, depends_on_past. Опыт использования SparkSubmitOperator, PythonOperator, BashOperator. Применение Airflow Variables, Connections, XCom, сенсоров и макросов, использование Trigger Rules.

Кандидат описывает структуру и код production DAG в Airflow для регулярного запуска Spark-задачи, применения сенсоров для ожидания входных данных и корректной обработки сбоев. Объясняет различия в передаче параметров (XCom vs Airflow Variables) и применение Trigger Rules.

- Язык Python: Уверенное владение Python (PEP8, ООП, модули, virtualenv). Опыт написания модульных тестов (pytest, unittest). Практический опыт работы с Web-API (RESTful API, библиотеки requests/aiohttp, сериализация и парсинг JSON, обработка сетевых ошибок, таймаутов и повторных попыток).

Кандидат подтверждает опыт написания скриптов на Python и объясняет последовательность интеграции с Web-API (отправка запросов к REST-эндпоинтам, сериализация/парсинг JSON, обработка сетевых ошибок и таймаутов).

- SQL & Хранилища данных: Продвинутое владение SQL: сложные выборки и JOIN (inner, left, full, semi/anti), агрегатные и оконные функции (ROW_NUMBER, DENSE_RANK, LEAD, LAG), CTE, подзапросы. Опыт проектирования таблиц, понимание партиционирования, индексов и представлений (View / Materialized View). Понимание принципов работы с HDFS и Hive.

Кандидат предлагает логически выверенную структуру витрины данных для векторизации профиля абонента и описывает процесс сбора и доставки событий обратной связи (выбор тарифа клиентом) с точки зрения целостности и идемпотентности данных.

Уверенно объясняет логику работы оконных функций (ROW_NUMBER, LEAD/LAG), различия видов JOIN (inner/left/semi/anti) и приводит примеры из своей практики по оптимизации медленных запросов (партиционирование, индексы).

- Linux & CI/CD: Базовые навыки работы в Linux/Bash (навигация, поиск по файлам, просмотр логов). Опыт работы с Git (ветки, merge requests), базовое понимание Docker.

На интервью кандидат подтверждает базовые навыки работы в Linux (команды навигации, просмотр логов процессов) и опыт работы в команде с использованием Git (коммиты, ветки, MR).

Будьте осторожны: если работодатель просит войти в их систему, используя iCloud/Google, прислать код/пароль, запустить код/ПО, не делайте этого - это мошенники. Обязательно жмите "Пожаловаться" или пишите в поддержку. Подробнее в гайде →

Текст вакансии взят без изменений

Источник -