Data Engineer
Summary
Designs and builds data layers (Raw, Clean, Enriched) using Data Vault/3NF and Star Schema, implements fuzzy-matching algorithms in Python, and sets up automated data-quality checks in pipelines.
Чем предстоит заниматься:
- проектированием и разработкой слоев данных (Raw, Clean, Enriched/Presentation) с учетом лучших практик моделирования (Data Vault 2.0 / 3NF для хранилища, Star Schema для витрин);
- разработкой и внедрением кастомных алгоритмов дедупликации и Entity Resolution (Fuzzy Matching) на Python;
- формализацией бизнес-правил качества данных в код, настройкой уровней доверия к источникам и правил выживания (survivorship rules);
- внедрением Data Contracts и механизмов карантина (quarantine) для некачественных данных с возможностью их последующего разбора;
- настройкой автоматизированного тестирования данных (Data Quality checks) в пайплайнах.
- SQL и трансформации: Продвинутый уровень SQL и опыт работы с dbt (или аналогами) для построения слоев данных;
- Python для данных: Уверенное владение PySpark и/или pandas для обработки больших объемов данных и реализации логики матчинга;
- Fuzzy Matching: Практический опыт применения библиотек нечёткого поиска и связывания записей (например, Splink, recordlinkage, dedupe, theFuzz);
- Алгоритмы: Понимание принципов работы алгоритмов сравнения строк (Левенштейн, Джаро-Винклер, косинусное сходство на TF-IDF/эмбеддингах);
- Моделирование данных: Глубокое понимание 2-3NF, Data Vault 2.0 и различий между слоями сырых, очищенных и обогащенных данных;
- Data Quality: Опыт внедрения инструментов тестирования данных (Great Expectations, Soda, dbt tests, deequ или аналоги);
- Оркестрация и DevOps: Опыт работы с оркестраторами (Airflow, Dagster или Prefect), уверенное использование Git и базовые навыки CI/CD для дата-пайплайнов.