О компании:
Playerok — это маркетплейс цифровых товаров и услуг. Мы соединяем покупателей и продавцов, берём на себя безопасность сделки и запускаем собственные продукты. Строим масштабный бизнес на быстрорастущем рынке, на стыке гейминга, финтеха и e-commerce.
Сейчас мы ищем Senior Data Engineer и главной задачей будет-Развивать и поддерживать пайплайны загрузки данных из внешних API (рекламные площадки, YouTube, Telegram, Яндекс.Метрика, внутренний API маркетплейса, внутренние системы и др.) в ClickHouse. Строить слои данных (staging, DDS, витрины) и обеспечивать их стабильную работу.
Что для нас важно:
1. Работа с HTTP API
- Уверенное знание REST API, обработка GET/POST, заголовков, параметров
- Опыт с пагинацией (cursor, offset, page token), rate limiting, retry с exponential backoff
- Работа с аутентификацией: API keys, OAuth 2.0 (получение/обновление токенов)
- Умение парсить JSON / XML, обрабатывать ошибки и логировать сбои
- Будет плюсом: опыт с GraphQL, gRPC, WebSocket (для стримов)
2. ClickHouse (ключевой опыт)
- Проектирование таблиц (MergeTree, ReplacingMergeTree, агрегирующие движки)
- Понимание партиционирования, сортировочных ключей, индексов
- Материализованные представления (Materialized Views) для агрегатов
- Оптимизация запросов и распределённых таблиц (если кластер)
- Написание сложных запросов с оконными функциями, массивами, вложенными структурами
3. ETL / ELT и оркестрация
- Опыт с Airflow или аналогами (у нас — скорее всего Airflow)
- Построение DAG’ов: вызов API → выгрузка → трансформация (dbt или чистая SQL/Python) → загрузка в ClickHouse
- Инкрементальная загрузка (по времени, по ID), upsert, дедупликация
- Работа с S3 / Minio (если нужен промежуточный слой)
- Понимание принципов CDC (Change Data Capture) и опыт работы с Debezium
4. Языки и инструменты
- Python — обязательно: requests, aiohttp (для высокой производительности), pandas/polars (для трансформаций), clickhouse-driver
- SQL — свободно (в том числе специфика ClickHouse SQL)
- dbt — обязательно: написание моделей, тесты, документация, инкрементальные модели
- Git, CI/CD (GitHub Actions / GitLab CI) — чтобы тестировать пайплайны
5. Архитектура данных
- Проектирование слоёв: сырой слой (staging), логический слой (DDS), витрины (DM)
- Понимание медленно меняющихся измерений (SCD type 2) — может понадобиться
- Документирование моделей данных (data dictionary, схема таблиц)
6. Kafka
- Опыт работы с Apache Kafka: продюсеры/консьюмеры, топики, партиции, offset management, consumer groups
- Интеграция Kafka с ClickHouse (Kafka Engine, Kafka Connect) и Airflow
- Понимание гарантий доставки (at-least-once, exactly-once) и принципов потоковой обработки
Что предлагаем:
-
Удаленный формат сотрудничества.
-
350 000 руб — стартовая вилка, итоговая сумма обсуждается по опыту.
-
Возможность выбрать форму сотрудничества и оплаты (все налоги — наша забота).
-
Онбординг-квест — не бросим в бой без подготовки, введем в курс дела и подключим к команде.
-
Занятость 5/2 с 8-часовым рабочим днем.
-
Команда профи — работаешь с инициативными и увлеченными коллегами.
-
Пауза на восстановление — «перезагрузиться» можно в оплачиваемом отпуске или на больничном.
Откликайся на вакансию — это первый шаг к тому, чтобы стать частью команды, которая меняет правила игры. Ваш ход! 🎮
Похожие вакансии
Умение писать понятный и тестируемый код на Go. Навыки свободного пользования терминалом в Linux и понимания, куда посмотреть, когда сервер...
Опыт работы в аналогичной должности от 2 лет. Опыт работы в расследованиях инцидентов информационной безопасности. Теоретические знания в области реагирования...
Опыт администрирования и сопровождения кластеров Ceph от 30 узлов от 2-х лет. Опыт самостоятельного развёртывания и настройки Ceph.
5+ лет опыта в геймдизайне и опыт в роли Lead / Senior Game Designer на системных проектах. Сильный generalist-профиль...
Базовые знания сетей: TCP/IP, DNS, HTTP/HTTPS, VPN, VLAN. Понимание принципов работы WAF, DDoS-защиты и Firewall.
