查看简历
Senior 全栈开发者
合同约定
俄罗斯圣彼得堡
全职远程工作
工作经验
3 年 3 月
最近的工作地点
БФТ-Холдинг
Data Engineer
2 年
关于我
关于我
Data Engineer, 5+ лет в банке и госсекторе. Пишу на Python и SQL, строю надёжные конвейеры данных и сервисы вокруг них: Airflow, Kafka, PySpark, Greenplum, ClickHouse, dbt, Docker, GitLab CI/CD, интеграции через REST и gRPC
Результаты: ускорил тяжёлые ELT-цепочки с 5000 до 2700 секунд, освободил 45% слотов оркестратора, ускорил витрину в ClickHouse с 26 секунд до единиц, сделал универсальный SQL-исполнитель на проде, после которого разовые выгрузки перестали требовать отдельных дагов
Хочу в продуктовую разработку на стыке бэкенда и интерфейсов. Знаком с доменом арбитража трафика: партнёрки, офферы, трекеры, постбэки, метрики ROI, CPL, CR, поэтому быстро вхожу в контекст. Рассматриваю проектную работу (ГПХ/ИП) и частичную занятость, удалённо.
Affiliate经验
Nutra
Meta (Facebook)
Tier-3
工作经验3 年 3 月
十一月 2024 - 至今
(2 年)
БФТ-Холдинг
Data Engineer
В команде центрального корпоративного хранилища данных развиваю DWH цифровой платформы ЕЦП через Kafka в него стекаются события десятков внутренних сервисов и государственных интеграций, проходят ELT - конвейер по слоям SRC - STG - CORE - DM и попадают в BI и регламентированную отчётность Зона ответственности - надёжность и ресурсная эффективность конвейера на пяти контурах
Обязанности
- Отвечаю за ELT-контур хранилища в Airflow 2.3.3 37 регулярных дагов, пакетная, дельтовая и потоковая загрузка, готовность витрин к утренней отчётности
- Подключение новых источников под ключ от согласования контракта данных с владельцем системы до витрины в DM, JDBC (Greenplum, PostgreSQL, Oracle, HBase через Phoenix), Kafka, S3, gRPC
- Проектирование модели хранилища слои SRC, STG, CORE, DM, историчность по SCD2, согласование ключей и гранулярности с аналитиками
- Производительность Greenplum разбор планов через EXPLAIN ANALYZE, выбор ключей дистрибуции и партиционирования, устранение Redistribute и Broadcast Motion на тяжёлых соединениях
- Трансформации на PySpark в YARN-кластере управление сессиями через Livy REST API, подбор ресурсов executor контроль shuffle и перекоса партиций
- Разбор инцидентов на проде восстановление данных после сбоев загрузок, перезапуск цепочек с контролем идемпотентности
Достижения
- Устранил перекос данных в тяжёлых ELT - цепочках Greenplum 6.21 согласовал ключи
дистрибуции, убрал Redistribute Motion, добавил партиционирование и разбиение на подзадачи - расчёт с 5000 до 2700 секунд
- Переработал статистический даг, занимавший 140 из 300 слотов кластера: массовый
параллелизм заменил последовательным циклом с изоляцией ошибок по каждому дагу. Освободил 45% слотов оркестратора под приоритетные пайплайны
- Предложил и внедрил универсальный SQL-исполнитель на прод-конфиге разовые выгрузки перестали требовать отдельного дага под каждую задачу
- Локализовал первопричину отказов Kerberos/SPNEGO на новом контуре Hadoop, где Livy, HDFS и YARN отвечали 401 без диагностики собрал доказательную базу диагностическим скриптом и согласовал устранение с администраторами платформы
Стек Airflow 2.3.3, PySpark 3.3.0, Livy, dbt, Greenplum 6.21 (Arenadata DB), ClickHouse 22.3 (Arenadata QuickMarts), Postgres Pro, Oracle, HBase / Phoenix, Kafka, S3, gRPC, Python, SQL, GitLab CI/CD, Docker
八月 2023 - 十一月 2024
(1 年 4 月)
Финансовая корпорация Открытие
Data Engineer
Работал в хранилище розничного блока банка витрины по картам, кредитам а также работе с задолженностью для отчётности и внутренних дашбордов Данные собирались из внутренних систем банка и внешних источников, приводились к единым ключам клиента и договора и складывались в ядро с полной историчностью
Обязанности:
- Даги загрузки кредитного блока просрочка, платёжная дисциплина
- Историчность ядра по SCD2 интервалы version_from/version_to, закрытие предыдущей версии
записи при изменении, логическое удаление флагом
- Забор сырых выгрузок из озера Hive поверх HDFS как слой метаданных, дальше в Greenplum
через внешние таблицы отдельными потоками Kafka и S3
- Предобработка на PySpark дедупликация выгрузок, приведение типов и форматов, склейка
суточных партиций в единый срез
- Сведение внутренних контуров банка с внешними источниками при сборке витрин, разбор
расхождений там, где ключи не сходились
- Разбор тяжёлых запросов в Greenplum планы, ключи дистрибуции, перекос после
подключения новых источников
- Доступы к источникам через HashiCorp Vault - Bank-Vaults и Vault Secrets Operator в Kubernetes
Достижения
- Ускорил витрину операций по картам в ClickHouse профиль клиента открывался 26 секунд и регулярно ловил too many parts перевёл партиционирование с суточного на месячное, пересобрал ключ сортировки под клиента и карту, добавил преагрегат для дашборда - профиль стал открываться за единицы секунд
- Ввёл хеш натурального ключа и строки целиком в SCD2-загрузке, отделив фактические изменения от повторной заливки того же среза - версии записей перестали плодиться на перезаливках источника
技能
dwh
SQL
Postgre SQL
Git
Python
CI/CD
Docker
Apache Spark
Pandas
REST-API
PyTorch
Kafka
语言能力
中级 英语
就业
就业
全职, 兼职, 项目
工作形式
远程工作
工作时间
灵活, 5/2
搬迁
可能
出差
可以出差