Cocosations
XMPP-клиент для Android на основе Conversations с диагностикой звонков: этап сбоя, причина и качество звука.
- Android
- Java
- XMPP
- WebRTC
- F-Droid
Senior Data Engineer / Data Platform Engineer
Проектирую и развиваю платформы данных: ETL/ELT-процессы, DAG в Airflow, DWH на Hadoop, витрины в ClickHouse и PostgreSQL. Отвечаю за полный цикл: от сбора данных до отчетов и мониторинга.
Работа с данными ведется в закрытых репозиториях компаний, ее я описываю в кейсах. Ниже открытые проекты, которые я делаю вне работы.
XMPP-клиент для Android на основе Conversations с диагностикой звонков: этап сбоя, причина и качество звука.
Скриншотер для GNOME на Wayland: режимы захвата, редактор пометок, распознавание текста, выгрузка по SFTP и WebDAV.
Менеджер паролей, которому нужны только клиент и учетная запись XMPP на любом сервере: сквозное шифрование, ядро на Rust, web, Android и терминальный клиенты.
Начинал с прикладной разработки: писал приложения на Java, Python и C++, веб-интерфейсы и скрипты миграции баз PostgreSQL. Затем перешел к данным в продукте: разбирал логи, писал загрузчики и парсеры на Go и Python, строил агрегаты в ClickHouse. Сейчас разрабатываю и развиваю ETL/ELT-процессы, DAG в Airflow, DWH на Hadoop, Hive и Impala, витрины и агрегаты в ClickHouse и PostgreSQL. Также спроектировал пилотный lakehouse на Iceberg, S3, Spark, Kafka и PyArrow.
Отвечаю за полный цикл работы с данными: сбор из внутренних и внешних источников, парсинг и нормализацию, обогащение, хранение, агрегацию, отчетность, мониторинг, алертинг и автоматизацию. Проектирую отказоустойчивые пайплайны, оптимизирую производительность запросов и оркестрации, слежу за качеством данных и SLA.
Работал с продуктовыми, маркетинговыми и логовыми данными, интеграциями с Google Ads, Meta Ads, data.ai, myTracker и другими внешними API. Довожу данные до бизнеса: дашборды, отчеты, self-service BI, ad-hoc анализ. В команде занимаюсь code review, менторством, архитектурными решениями и взаимодействием с аналитикой, продуктом и инфраструктурой.
attributes
Сбор данных из логов продуктов и внешних источников: Google Ads, Meta Ads, data.ai, myTracker, внутренние API, БД, файлы, S3. Настройка CDC, выгрузок, парсеров и загрузчиков. Работа с Kafka и очередями.
ETL/ELT-процессы на Python и SQL. Парсеры текстовых логов, очистка, нормализация, обогащение, дедупликация. Построение витрин, агрегатов, SCD2, слоев DWH. PySpark, dbt, Spark SQL.
Вставка данных в ClickHouse, агрегаты в ClickHouse и MySQL. DWH на Hadoop, Hive и Impala. Работа с PostgreSQL, S3, HDFS, Parquet. Оптимизация партиционирования, сжатия и схем хранения.
DAG в Airflow: динамические DAG, custom operators, sensors, pools, SLA, retries, backfill. Настройка и оптимизация производительности Airflow. CeleryExecutor и KubernetesExecutor, мониторинг очередей и воркеров.
Проверки полноты, уникальности, своевременности и консистентности. Reconciliation между источниками и витринами. Поиск аномалий, Great Expectations, dbt tests, собственные проверки.
Автоматизация отчетов, дашборды для бизнес-аналитики, анализ данных для маркетинга. Superset, Metabase, Grafana, ad-hoc анализ. Self-service BI и слой витрин для аналитиков.
Дашборды Grafana, Graphite, Prometheus. Веб-модуль мониторинга ETL-процессов, webhook для алертов Grafana. Уведомления в Telegram, разбор инцидентов, health-check пайплайнов.
Оптимизация SQL-запросов в ClickHouse (MergeTree), PostgreSQL, Hive и Impala, оптимизация DAG в Airflow. Снижение времени обработки, стоимости хранения и нагрузки на кластер.
Боты, автоответчики, внутренние API и инструменты для команды.
Техническая часть рассылок пользователям, до 3 млн получателей. Очереди, ограничение скорости отправки, шаблоны, доставляемость, мониторинг.
Docker, Podman, Kubernetes, GitLab CI, Ansible. CI/CD для данных и сервисов. Документация, lineage, управление доступами, работа с PII по 152-ФЗ и GDPR.
Code review, менторство, оценка задач, архитектурные решения, сбор требований, взаимодействие с продуктом и аналитикой.
Пишите на почту, по XMPP или в Telegram.