Техническое собеседование (Архитектурное интервью)
-
Обсуждение опыта:
- Чем вы занимаетесь сейчас?
- Какой у вас стек?
- Какие задачи решаете?
-
Вопросы по теории и архитектуре:
- OLTP vs OLAP:
- Что такое OLTP и OLAP?
- Примеры OLTP и OLAP баз данных.
- Базы данных (ClickHouse, Greenplum, PostgreSQL):
- Что такое PostgreSQL?
- Что такое Greenplum?
- Что такое ClickHouse?
- Когда что использовать (Greenplum, ClickHouse, PostgreSQL)?
- Обработка дублей:
- Как обрабатывать дубли? (дедупликация по бизнес-ключу, hash-сравнение, window-функции (row_number()), ReplacingMergeTree в ClickHouse, SCD-подходы в DWH)
- Data Vault / Data Vault 2.0:
- Что такое Data Vault? (методология моделирования DWH, состоящая из Hub, Link, Satellite)
- Что такое Data Vault 2.0? (добавляет hash-ключи, ориентирован на MPP и Big Data, лучше масштабируется, учитывает streaming)
- Схемы данных:
- Какие схемы данных вы знаете? (Звезда, Снежинка, Якорная модель)
- Data Vault в Greenplum:
- Как бы вы использовали Data Vault в Greenplum? (Hub, Link, Satellite)
- Как происходит обновление данных в Data Vault в Greenplum? (инкрементально, по batch-пайплайну, частота — от hourly до daily, в зависимости от SLA)
- Python (чек-лист):
- Типы данных
- Структуры данных
- Работа с памятью
- Базовые подходы к обработке данных
- Data Governance:
- Что такое Data Governance? (управление данными на уровне компании: владельцы данных, политики доступа, каталоги, lineage, классификация данных)
- Какие технологии используются для Data Governance? (Data Catalog (Amundsen, DataHub), Lineage (OpenLineage), RBAC / ABAC, Metadata management)
- Data Quality:
- Что такое Data Quality? (контроль качества данных: полнота, точность, уникальность, актуальность)
- Какие инструменты используются для Data Quality? (Great Expectations, dbt tests, кастомные проверки, SLA/SLI)
- Потоковая обработка:
- Что такое Kafka? (брокер сообщений, партиции, consumer groups)
- Что такое Flink? (stream processing, stateful вычисления, window’ы, exactly-once)
- MPP-движки:
- Какие MPP-движки вы знаете? (Greenplum, Redshift, BigQuery, ClickHouse (частично))
- Архитектуры хранилищ данных:
- Какие архитектуры хранилищ данных вы знаете? (Classical DWH (Kimball / Inmon), Data Vault, Lakehouse, Lambda / Kappa architecture)
- Подходы к хранению данных:
- Какие подходы к хранению данных вы знаете? (Raw / ODS / DWH / Data Marts, Batch vs Streaming, Schema-on-read / schema-on-write)
- Kafka: Postgres → Greenplum пайплайн:
- Опишите пайплайн данных из Postgres в Greenplum через Kafka. (CDC (Debezium) из Postgres в Kafka, Kafka → staging в Greenplum, Трансформации, Загрузка в core / mart слой)
- Что содержит stage-таблица в таком пайплайне? (бизнес-ключи, op_type, event_ts, hash, payload)
- Пайплайн данных:
- Опишите общий пайплайн данных. (Raw → Staging → Core → Analytics)
- Как осуществляется распараллеливание в пайплайне? (по партициям, по источникам, по временным окнам)
- dbt:
- Что такое dbt? (Инструмент для трансформаций: SQL-модели, тесты, документация, lineage)
- S3:
- Что такое S3? (Объектное хранилище: дешёвое, масштабируемое, используется как Data Lake)
- Apache Hudi:
- Что такое Apache Hudi? (Табличный формат для Data Lake: upsert, ACID, time travel, incremental queries)
- ACID:
- Что такое ACID? (Atomicity, Consistency, Isolation, Durability)
- CAP-теорема:
- Что такое CAP-теорема? (Система не может одновременно гарантировать Consistency, Availability, Partition tolerance)
- OLTP vs OLAP:
-
Изображение:
- На изображении представлен человек в деловом костюме и солнцезащитных очках, держащий лист бумаги с надписью "NDA". На заднем плане видны парящие листы бумаги на синем фоне. Это символизирует конфиденциальность информации, связанной с iGaming-компанией.