Data contracts на собеседовании Data Engineer

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Зачем разбирать на собесе

Data contracts — modern подход к производственным data pipelines. На собесе DE: «как ты coordinate между producers и consumers».

Что включает контракт

Schema. Колонки, типы, constraints (nullable, unique).

Quality SLA. Freshness, completeness, accuracy thresholds.

Ownership. Кто owner producer, кто accountable.

Versioning. Текущая version, history.

Breaking change policy. Notification period, deprecation rules.

Compliance flags. PII, regulatory.

Формат

name: orders
owner: orders-team
version: 1.2

schema:
  - name: order_id
    type: bigint
    nullable: false
    unique: true
  - name: amount
    type: decimal(10,2)
    nullable: false
    range: [0, 1000000]
  - name: created_at
    type: timestamp
    nullable: false

sla:
  freshness: 1 hour
  completeness: 99.9%
  uniqueness: 100%

compliance:
  contains_pii: false

deprecation:
  notice_period: 90 days

В git as code, reviewed как regular PR.

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Enforcement

CI checks. При schema change в producer — проверка breaking change.

Runtime monitoring. Соответствует ли real data контракту (Great Expectations / Soda).

Alerting. SLA нарушение → notification owner.

Schema registry (Confluent или альтернативы) — runtime enforcement для Kafka.

Tools

Soda Contracts. YAML-based, CI-friendly.

Great Expectations. Expectation suites как контракты.

dbt schema tests. Простой вариант.

OpenLineage. Lineage with contracts.

Apache Iceberg. Schema evolution с гарантиями.

В РФ: чаще custom + dbt tests / GE.

Связанные темы

FAQ

Это официальная информация?

Нет. Статья основана на материалах Soda / Great Expectations / data contracts community.


Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов.