Вакансия: Data Engineer (ETL -разработчик)
Описание вакансии
Data Engineer в команду "Облако данных" стрим "Источник данных" .Основная задача команд кластера Облако данных реализация ETL-процессов взаимодействия Банка с внешними источниками данных (загрузка/выгрузка) с использованием инфраструктуры Банка и Облачных сервисов, а также настройка и поддержка ETL-процессов внутри Банка.
Задачи:
- Работа в связке с аналитиком по созданию конечного продукта из Бизнес-требований;
- Изучение и проработка технической документации, составленной аналитиком;
- Реализация ETL -процессов на Python и Spark на основании полученной документации;
- Реализация механизмов работы с внешними системами (брокеры сообщений, базы данных);
- Реализация авто-тестов;Построение CI/CD пайплайнов;
- Проведение ревью кода других разработчиков
Обязанности:
- Разработка DAG Airflow для реализации ETL-процессов;
- Реализация интеграции по получения данных из источников вида: REST API, SOAP, FTP, S3, парсинг сайтов и XLS;
- Построение и верификация схем данных на соответствии модели данных и требования безопасности Банка;
- Реализация функционала укладки данных в Hadoop;
- Мониторинг, управление инцидентами по реализованным процессам;
- Разработка и поддержка внутренних инструментов;
- Ведение разработки в системе контроля версий;
- Участие в Agile церемониях команды и стрима
Требования:
- Опыт разработки на Python от трех лет;
- Опыт проектирования и разработки ETL-процессов;
- Опыт работы с интерфейсами взаимодействия: REST API, SOAP;
- Знание основных алгоритмов, структур данных и основных паттернов проектирования приложений;
- Умение читать и понимать документацию, разрабатывать приложения на основании документации;
- Опыт разработки на Airflow, глубокое понимание принципов разработки DAG-ов;
- Опыт работы с брокерами сообщений: RabbitMQ, Kafka;
- Знание SQL и инфраструктуры Hadoop, понимание особенностей ее работы;
- Опыт работы с каким-либо дистрибутивом Hadoop (Cloudera, Arenadata, Hortonworks, Apache и т.п.);
- Опыт разработки приложений на Spark;
- Умение работать с системами контроля версий git;
- Опыт работы в ОС семейства UNIX: RHEL, Ubuntu;
- Общее понимание работы сетевых протоколов: TCP/IP, UDP, SSH, FTP, SMTP, IMAP
Будет плюсом:
- Понимание особенностей экосистемы Hadoop;
- Знание Kerberos;
- Знание работы с системами шифрования: КриптоПро
- Понимание подходов к оптимизации производительности Python и Spark приложений;
- Опыт написания многопоточных приложений на Python