AnyClass
Data Engineer
Москва
Удаленно
от 250 000 ₽
Ключевые обязанности:
- Поддержка, оптимизация и рефакторинг существующих ELT-процессов.
- Создание новых пайплайнов для выгрузки данных из различных источников (API, базы данных и др.) с использованием Meltano.
- Разработка и поддержка моделей данных в dbt Core.
- Настройка и поддержка оркестрации в Apache Airflow.
- Работа с DWH на PostgreSQL.
- Участие в проектировании архитектуры данных и улучшении существующих решений.
Ожидания от кандидата:
- 1. SQL (Продвинутый уровень):
- Понимание сложных джоинов, подзапросов, CTE.
- Опыт работы с оконными функциями.
- Умение анализировать и оптимизировать «тяжелые» запросы: анализ планов выполнения, работа с индексами, переписывание логики для ускорения.
- Навык написания читаемого, структурированного и эффективного SQL-кода.
- 2. PostgreSQL (Администрирование и оптимизация):
- Опыт настройки производительности: создание индексов, настройка параметров конфигурации для нагрузки ETL.
- Понимание процессов вакуумирования, блокировок.
- Практические навыки мониторинга и диагностики проблем (медленные запросы, нехватка ресурсов).
- Базовые навыки администрирования: создание пользователей, управление правами, бэкапы.
- 3. Python (Хорошее знание языка, чистый код):
- Уверенное владение языком, в частности, для обработки данных (pandas/numpy - как бонус).
- Ключевой навык: написание чистого, поддерживаемого кода. Понимание принципов DRY, KISS, базовых паттернов.
- Работа с API.
- 4. Работа с Legacy-кодом:
- Умение читать, анализировать и понимать чужой код.
- Способность видеть архитектурные недостатки, точки роста для оптимизации и потенциальные ошибки.
- Системное мышление: перед тем как удалить или переписать, способен оценить влияние на связанные процессы и downstream-зависимости.
- Практический опыт успешного рефакторинга или модернизации частей ETL/ELT-систем.
Желательно:
- 1. Apache Airflow:
- Практический опыт написания, отладки и поддержки DAG.
- Понимание сенсоров, операторов, хуков.
- Опыт создания кастомных операторов для специфичных задач проекта.
- Понимание принципов оркестрации, управления зависимостями и перезапуском задач.
- 2. dbt Core:
- Практический опыт: создание моделей, макросов, тестов, документации.
- Умение работать с dbt_project.yml, управлять зависимостями через packages.
- 3. Docker / Docker Compose:
- Опыт контейнеризации сервисов, умение управлять контейнерами.
- Умение писать Dockerfile и docker-compose.yml для изоляции и воспроизводимости среды разработки.
- 4. Git и процессы разработки:
- Продвинутая работа с Git: ветвление, merge request, разрешение конфликтов.
- Опыт участия в Code Review.
- Понимание принципов CI/CD применительно к данным (запуск тестов dbt, деплой изменений).
- 5. Meltano:
- Понимание концепции фреймворка.
- Опыт настройки конвейеров (tap -> target), управления плагинами, конфигурацией (meltano.yml).
- Если прямого опыта нет - готовность и способность быстро разобраться. Это ключевой навык для проекта, но его можно приобрести при наличии сильной базы выше.
- 6. Принципы моделирования хранилищ данных:
- Знание подходов Data Vault, Kimball.
Что мы предлагаем:
- Оформление по ТК РФ.
- Full-time занятость (5/2, 8 часов).
- Стабильная заработная плата.
- Бесплатный доступ к курсам AnyClass.
- Well-being-программа после полугода работы в компании: медицина, психотерапия, спорт, иностранные языки.
- Возможность быстрого профессионального роста.
- Команда с общей целью, где решения принимаются быстро и каждый настроен помочь.
- Возможность принять участие в развитии продукта, улучшающего качество жизни миллиона людей.

Помочь с выбором?
Поможем устроиться на эту работу или лучше!