Проектирует стратегию индексирования для ETL-источников: partial indexes для active records, covering indexes для частых extractions. Понимает trade-off между скоростью чтения и записи в OLTP-источниках.
Роли · Data Engineer · Middle
Что должен уметь Middle }
25 ключевых навыков, всего 64. Ожидания по каждому навыку и что меняется на следующем уровне.
На этой странице — что ожидается от Middle }, навык за навыком. Ключевые навыки оценивают руководитель и коллеги в цикле ревью; остальные учитываются только в самооценке. Основные области: Базы данных, Облако и инфраструктура, Data Engineering.
Ключевые навыки для Middle
Сгруппированы по областям. Метка справа — ожидаемая глубина: Осведомлённость, Применение, Продвинутый или Эксперт.
Базы данных · 9
Проектирует schema evolution для data pipelines: backward-compatible миграции, expand-contract для zero-downtime, версионирование через Flyway/Alembic. Обрабатывает schema drift в источниках.
Оптимизирует extraction и transformation: predicate pushdown, partition pruning, выбор между JOIN и subquery. Профилирует SQL-запросы в Airflow через query tags. Оптимизирует Spark SQL execution plans.
Проектирует dimensional модели: Kimball methodology (conformed dimensions, bus matrix), Data Vault (hubs, links, satellites). Применяет SCD Type 2 с effective dates. Моделирует semi-structured данные.
Настраивает и управляет репликацией БД для data-пайплайнов: read replicas для ETL-разгрузки, schema migrations в реплицированных средах, change data capture (CDC). Понимает trade-offs консистентности, проектирует data flows с учётом replication lag.
Проектирует модели данных Cassandra, оптимизированные под query-driven паттерны доступа. Реализует эффективные batch-операции и управляет жизненным циклом данных через TTL. Настраивает уровни консистентности чтения/записи для баланса задержки и надёжности.
Настраивает backup для data pipeline артефактов: версионирование промежуточных данных в S3, point-in-time recovery в PostgreSQL. Реализует rollback-механизмы для ETL-процессов.
Проектирует таблицы ClickHouse для аналитических pipeline-ов: выбор engine (MergeTree, AggregatingMergeTree, ReplacingMergeTree), partitioning by date, materialized views для pre-aggregation. Оптимизирует вставку через batch inserts.
Оптимизирует extraction из PostgreSQL: COPY для bulk export, cursor-based pagination, partitioned tables. Настраивает logical replication для CDC. Проектирует staging-таблицы для ETL.
Облако и инфраструктура · 1
Настраивает сетевую связность для data infrastructure: VPC peering для cross-account access, PrivateLink для managed services, security groups для data pipeline компонентов. Диагностирует connection issues.
Data Engineering · 14
Самостоятельно проектирует ETL-пайплайны между зонами data lake с поддержкой эволюции схем. Оптимизирует стоимость хранения через lifecycle-политики, компактификацию и многоуровневое хранение. Реализует контроль качества данных между слоями медальонной архитектуры с автоматизированной валидацией.
Проектирует Airflow DAGs: dynamic task generation, XCom для передачи данных, TaskGroups для организации. Использует sensors, hooks для интеграции с external systems. Настраивает connections и variables.
Самостоятельно реализует Spark-пайплайны данных: оптимизирует shuffle-операции и стратегии партиционирования, реализует Structured Streaming для real-time ETL, управляет Delta Lake таблицами с ACID-транзакциями. Тюнит конфигурации Spark для памяти, параллелизма и стоимостной эффективности.
Самостоятельно реализует data pipelines с Dagster / Prefect. Оптимизирует производительность. Обеспечивает data quality.
Настраивает data catalog: интеграция с metadata sources (Hive, Glue, dbt), автоматический harvesting. Создаёт business glossary. Тегирует данные для классификации (PII, financial).
Создаёт data contracts: YAML/JSON schema definitions, quality checks, SLA metrics. Интегрирует contract validation в CI/CD. Настраивает alerting при нарушении контрактов.
Настраивает автоматический сбор lineage: интеграция Airflow/dbt/Spark с lineage-системой. Использует lineage для debugging data quality issues. Визуализирует зависимости в DataHub/OpenMetadata.
Настраивает data quality framework: Great Expectations/Soda для automated checks, custom expectations, alerting при failures. Мониторит data freshness и volume anomalies.
Проектирует DWH-компоненты: dimensional modeling по Kimball, SCD Types (1, 2, 3), aggregate tables. Настраивает incremental loading. Оптимизирует производительность через distribution keys и sort keys.
Проектирует dbt-проект: custom macros, incremental models, snapshots для SCD Type 2. Настраивает environments (dev/staging/prod). Оптимизирует модели через materialization выбор.
Самостоятельно реализует data pipelines с Delta Lake / Apache Iceberg. Оптимизирует производительность. Обеспечивает data quality.
Оптимизирует обработку через pandas/Polars: chunked reading для больших файлов, category dtype для memory, vectorized operations вместо iterrows. Мигрирует на Polars для performance-critical задач.
Проектирует SQL-трансформации: stored procedures для complex ETL, parameterized queries, temp tables для промежуточных вычислений. Оптимизирует execution plans. Управляет transaction control.
Строит ETL-пайплайны реального времени с Kafka Streams для трансформации и обогащения данных. Реализует семантику exactly-once и мониторит consumer lag на этапах обработки.
Observability и мониторинг · 1
Добавляет custom metrics в приложение (counter, gauge, histogram). Пишет PromQL-запросы для дашбордов. Создаёт Grafana dashboards. Настраивает базовые алерты (high error rate, high latency).
Дополнительные навыки
Команда их не оценивает, но они входят в самооценку и план развития.
Что меняется на Senior
64 навыков получают более высокое ожидание или становятся ключевыми при переходе с Middle на Senior. Сначала самые большие скачки.
- Алгоритмы и сложность: Применение → Продвинутый · становится ключевым
- Асинхронное программирование: Применение → Продвинутый · становится ключевым
- Качество кода и рефакторинг: Применение → Продвинутый · становится ключевым
- Принципы ООП и SOLID: Применение → Продвинутый · становится ключевым
- Структурированное логирование: Применение → Продвинутый · становится ключевым
- Структуры данных: Применение → Продвинутый · становится ключевым
- Apache Kafka: Применение → Продвинутый · становится ключевым
- AWS: Применение → Продвинутый · становится ключевым
- Code Review: Применение → Продвинутый · становится ключевым
- Docker: Применение → Продвинутый · становится ключевым
} в открытой матрице компетенций: 64 навыков на 5 уровнях. Матрица бесплатна для специалистов и останется бесплатной.