Собеседование на Data Engineer в Ситилинк
orders поле promo_code может быть NULL. Что произойдёт со строкой, где promo_code = NULL, при фильтре WHERE promo_code <> 'NONE'?Содержание:
Почему Ситилинк — особенный работодатель для DE
Ситилинк — крупный ритейлер электроники и бытовой техники с заметной B2B-долей. Для Data Engineer это значит потоки данных сразу из нескольких миров: онлайн-заказы, чеки касс в физических магазинах, движения на складах, корпоративные продажи через B2B-кабинет. Всё это нужно свести в единое хранилище, чтобы аналитика и отчётность видели полную картину по клиенту и товару независимо от канала.
Стек типичен для российского enterprise-ритейла: Spark для тяжёлых батч-трансформаций, ClickHouse под быстрые аналитические витрины и дашборды, Greenplum как MPP-хранилище для DWH. Особенность роли — омниканальность и B2B: данные из онлайна и офлайна приходят в разных форматах и с разной задержкой, их нужно склеивать по клиенту и заказу, а B2B добавляет свои сущности (договоры, отсрочки, юрлица). На собесе проверяют, умеете ли вы строить надёжные пайплайны на этом стеке и разбираетесь ли в специфике ритейл-данных. Актуальные вакансии и формат процесса стоит смотреть на странице карьеры Ситилинк.
Информация в статье основана на публичных источниках и опыте кандидатов. Формат может отличаться по командам и грейдам. Уточняйте у рекрутера.
Этапы собеседования
Для DE в enterprise-ритейле процесс обычно состоит из 5–6 этапов. Порядок и число раундов зависят от команды и грейда, но набор блоков стандартный.
1. Скрининг с HR (30 минут)
Знакомство: с каким стеком работали, какие пайплайны строили, объёмы данных, мотивация, грейд и вилка. Полезно коротко описать, за какие данные отвечали и какой инструмент использовали.
2. SQL (60–90 минут)
Много SQL для аналитики и ETL: оконные функции, CTE, дедупликация, работа с медленно меняющимися измерениями. Для ClickHouse — специфика MergeTree и материализованных представлений. Проверяют не только «написать запрос», но и оптимизировать его под большой объём.
3. Spark и обработка данных (60–90 минут)
Живое кодирование или разбор: как устроены трансформации на Spark, чем отличается партиционирование от репартиционирования, откуда берётся перекос данных (data skew) и как с ним бороться, когда shuffle убивает производительность. Ждут понимания механики, а не только знания API.
4. Хранилище и моделирование данных (60 минут)
Как спроектировать DWH под ритейл: слои данных, витрины, модель звезды, работа с историчностью. Обсуждают выбор между ClickHouse, Greenplum и Spark под конкретную задачу и почему.
5. System design пайплайна (60–90 минут)
Проектирование end-to-end: «собери пайплайн чеков из касс в витрину продаж», «как склеить онлайн и офлайн данные по клиенту». Ждут, что вы обозначите источники, форматы, оркестрацию, идемпотентность, обработку опоздавших данных и мониторинг качества.
6. Поведенческое интервью и фит (45–60 минут)
STAR-истории: инцидент с упавшим пайплайном, конфликт с аналитиками по поводу данных, спорное архитектурное решение.
Что Ситилинк ценит в DE
- Spark на практике. Понимать не только API, но и механику: партиционирование, shuffle, перекос данных, оптимизацию джойнов — иначе тяжёлые трансформации будут медленными и нестабильными.
- ClickHouse глубоко. Движки семейства MergeTree, материализованные представления, проектирование витрин под быстрые агрегаты — ClickHouse здесь несёт аналитическую нагрузку.
- Проектирование DWH. Слои хранилища, витрины, модель звезды, историчность — умение разложить сырые данные в удобную для аналитики структуру.
- Мышление ритейла. Понимание сущностей домена: чеки, товары, склады, каналы, лояльность, B2B — и того, как они связаны в данных.
- B2B-данные. Учитывать, что корпоративные продажи добавляют свои сущности (договоры, отсрочки, юрлица) и их нужно моделировать отдельно от розницы.
Типичные задачи и кейсы
- Пайплайн чеков. Собрать данные с касс физических магазинов в единую витрину продаж, обеспечить дедупликацию и обработку опоздавших чеков.
- B2B-аналитика. Построить отчётность по корпоративным продажам с учётом договоров, отсрочек и юрлиц.
- Омниканальные пайплайны. Склеить онлайн и офлайн данные по клиенту и заказу, чтобы видеть полный путь покупателя между каналами.
- Витрины в ClickHouse. Спроектировать материализованные представления под дашборды и быстрые агрегаты по продажам.
- Оптимизация Spark-джоб. Разобраться, почему трансформация медленная, устранить перекос данных и лишний shuffle.
Как готовиться: план
- Spark. Механика: партиционирование, shuffle, перекос данных, оптимизация джойнов и агрегаций.
- ClickHouse. Движки MergeTree, материализованные представления, проектирование витрин под аналитику.
- DWH. Слои хранилища, витрины, модель звезды, работа с историчностью данных.
- SQL. Уровень middle-senior: оконные функции, CTE, дедупликация, оптимизация запросов.
- Retail-домен. Сущности ритейла и их связи: чеки, товары, склады, каналы, B2B.
Частые ошибки
- Слабый SQL. Data Engineer пишет много SQL для ETL и аналитики; кандидат, который не тянет оконные функции и оптимизацию запросов, не проходит базовый этап.
- ClickHouse поверхностно. Знать, что «это быстрая колоночная БД», но не понимать движки MergeTree и материализованные представления — недостаточно: именно на ClickHouse держится аналитика.
- Spark поверхностно. Уметь вызвать методы, но не понимать, откуда берётся shuffle и перекос данных, — значит не суметь объяснить, почему джоба тормозит, и не пройти технический этап.
Связанные темы
- Собеседование на DE в Магнит
- Собеседование на DE в Ozon
- Spark на собесе DE
- Собеседование на DS в Ситилинк
- Собеседование на PM в Ситилинк
FAQ
Сколько этапов на собесе DE в Ситилинк?
Обычно 5–6: скрининг с HR, SQL, Spark и обработка данных, блок про хранилище и моделирование, system design пайплайна и поведенческое интервью. Точное число зависит от команды и грейда.
Нужен ли опыт в ритейле?
Желателен, но не обязателен. С крепким стеком (Spark, ClickHouse, SQL, DWH) специфику ритейл-данных и омниканальности реально освоить за пару недель до собеса.
Какие инструменты используют?
Основной стек — Spark для тяжёлых трансформаций, ClickHouse под аналитические витрины и Greenplum как MPP-хранилище для DWH. Конкретный набор зависит от команды.
Какой уровень SQL ожидают?
Middle-senior: оконные функции, CTE, дедупликация, работа с историчностью и оптимизация запросов под большой объём, включая специфику ClickHouse.
Это официальная информация?
Нет. Этапы основаны на публичных источниках и опыте кандидатов. Точный процесс уточняйте у рекрутера.