Собеседование на Data Engineer в Купер
users поле phone бывает NULL и бывает пустой строкой. Какое утверждение верное?Содержание:
Почему Купер — особенный работодатель для DE
Купер (бывший СберМаркет) — сервис доставки продуктов и товаров из магазинов, входящий в экосистему Сбера. Для дата-инженера это классический маркетплейс-домен с тремя сторонами: покупатели, ритейлеры-партнёры и курьеры. Данные здесь текут постоянно и в реальном времени — заказы, статусы сборки, геопозиции курьеров, наличие товаров на полке, — и всё это надо собирать, чистить и превращать в витрины и фичи для ML.
Главная специфика — сочетание высокой нагрузки, реального времени и заметной доли аналитики для внешних клиентов (ритейлеров). Событий много, они приходят потоком, а бизнес хочет видеть метрики почти мгновенно: где застряли заказы, как двигаются курьеры, что с конверсией у конкретной сети. Отсюда и стек: Spark для тяжёлой обработки, Kafka для стриминга событий, ClickHouse для быстрых аналитических витрин и dbt для моделирования трансформаций.
От DE ждут не просто «умею писать pipeline», а маркетплейсного мышления: понимание, что заказ проходит длинный путь со множеством статусов, что данные приходят с задержками и дубликатами, и что витрина для ритейлера — это продукт, а не просто отчёт. Подробнее о вакансиях — на странице карьеры Сбера.
Информация в статье основана на публичных источниках и опыте кандидатов. Формат может отличаться по командам и грейдам. Уточняйте у рекрутера.
Этапы собеседования
Точное число этапов зависит от команды и грейда, обычно это 5–6 секций. Типичный маршрут выглядит так.
1. Скрининг с рекрутером (30–40 минут)
Знакомство и проверка соответствия: с каким стеком работали, какие объёмы данных обрабатывали, есть ли опыт со стримингом. Приготовьте короткий питч: продукт, ваша роль, какие pipeline проектировали и какой был результат в цифрах.
2. SQL и Python (60–90 минут)
Живое решение задач. По SQL ждут уверенных JOIN, агрегатов, оконных функций, дедупликации и понимания, как оптимизировать тяжёлый запрос. По Python — обработка данных, знание pandas/Spark API, умение написать чистую трансформацию. Уровень обычно middle–senior.
3. Spark (60 минут)
Отдельная и важная секция, потому что тяжёлую обработку в Купер гоняют на Spark. Спросят про модель выполнения (трансформации vs действия, ленивые вычисления), партиционирование, перекос данных (data skew), shuffle и как его сокращать, кэширование. Готовиться — по гайду Spark на собесе DE.
4. ClickHouse и dbt (45–60 минут)
Проверяют слой хранилища и моделирования. По ClickHouse — движки семейства MergeTree, материализованные представления, как строить быстрые аналитические витрины. По dbt — моделирование трансформаций, инкрементальные модели, тесты и документация. Частый акцент — на витрины для real-time аналитики ритейлеров.
5. Архитектура и system design (60 минут)
Кейс из домена: спроектировать pipeline под поток заказов или трекинг курьеров в реальном времени. Смотрят, как вы стыкуете Kafka, Spark и ClickHouse, как обеспечиваете идемпотентность и порядок событий, что делаете с поздними и дублирующимися данными.
6. Поведенческое и финал (45 минут)
Разбор реальных ситуаций по STAR: конфликты в команде, спорные технические решения, работа под нагрузкой и сорванные сроки. Проверяют коммуникацию и то, как вы принимаете инженерные компромиссы.
Что Купер ценит в DE
- Spark. Основной инструмент тяжёлой обработки. Ждут понимания модели выполнения, борьбы с перекосом данных и оптимизации shuffle, а не только «писал джобы».
- ClickHouse и dbt. Умение строить быстрые витрины на ClickHouse и аккуратно моделировать трансформации в dbt с тестами.
- Стриминг. Kafka и работа с потоком событий: идемпотентность, порядок, обработка дубликатов и поздних данных.
- Маркетплейс-мышление. Понимание домена доставки — заказы, статусы, курьеры, ритейлеры — и того, что витрина для партнёра это продукт.
- DWH. Уверенное моделирование хранилища и понимание, как данные превращаются из сырья в аналитические слои.
Типичные задачи и кейсы
- «Pipeline событий заказа» — сбор потока событий о заказе от создания до доставки, дедупликация и восстановление статусной модели.
- «Real-time трекинг курьеров» — обработка геопозиций в реальном времени и витрина для мониторинга.
- «ClickHouse-витрина для real-time аналитики» — быстрая витрина для ритейлеров с агрегатами почти в реальном времени.
- «dbt-модель для когортного retention» — моделирование удержания покупателей средствами dbt с инкрементальной загрузкой.
- «Spark на 2 ТБ событий» — обработка большого объёма с оптимизацией партиционирования и борьбой с перекосом данных.
Как готовиться: план
- Spark. Разберите модель выполнения, партиционирование, data skew, shuffle и кэширование. Старт — Spark на собесе DE.
- ClickHouse и dbt. Прокачайте движки MergeTree, материализованные представления и моделирование в dbt с тестами.
- Стриминг. Освойте базу Kafka: партиции, порядок, идемпотентность, обработка дубликатов и поздних данных.
- SQL. Тренируйте оконные функции, дедупликацию и оптимизацию запросов до уровня middle–senior.
- Маркетплейс-домен. Продумайте, как устроены данные доставки: заказы, статусы, курьеры, партнёры.
Прогнать вопросы по SQL, Spark и архитектуре данных в формате квиза можно на kariernik.ru.
Частые ошибки
- dbt поверхностно. Знать dbt «на уровне запускал модели» мало — спросят про инкрементальные модели, тесты и как устроен слой трансформаций.
- Слабый SQL. Плавать на оконных функциях и дедупликации — красный флаг для роли middle–senior, где SQL это ежедневный инструмент.
- Стриминг поверхностно. Не уметь объяснить идемпотентность, порядок событий и обработку дубликатов — провал на секции про real-time, а именно real-time тут ключевой.
- Игнорировать перекос данных в Spark. Рассказывать про Spark без понимания data skew и shuffle — на задаче «обработай 2 ТБ» это вскроется сразу.
Связанные темы
- Собеседование на DE в X5 Group
- Собеседование на DE в Сбере
- Spark на собесе DE
- Собеседование на DS в Купер
- Собеседование на PM в Купер
FAQ
Сколько этапов на собесе DE в Купер?
Обычно 5–6: скрининг с рекрутером, секция SQL и Python, отдельный Spark, ClickHouse с dbt, архитектурный кейс и поведенческое с финалом. Точное число зависит от команды и грейда — уточняйте у рекрутера.
Нужен ли опыт в food delivery или маркетплейсах?
Желателен, но не обязателен. Знание домена доставки помогает быстрее разобрать кейсы про заказы и курьеров, однако сильного инженера с опытом в высоконагруженных стриминговых системах рассмотрят и без прямого опыта в доставке. Важно показать маркетплейс-мышление.
Какие инструменты главные?
Spark, ClickHouse, dbt и Kafka. Spark — для тяжёлой обработки, Kafka — для потока событий, ClickHouse — для быстрых витрин, dbt — для моделирования трансформаций. Именно вокруг этой связки строится большинство вопросов.
Какой уровень SQL и Python ожидают?
Обычно middle–senior: уверенные оконные функции, дедупликация и оптимизация в SQL, чистая обработка данных и знание Spark API в Python. На секциях дают решать реальные задачи, а не спрашивают теорию.
Это официальная информация?
Нет. Этапы и требования основаны на публичных источниках и опыте кандидатов и могут отличаться по командам и грейдам. Точный процесс уточняйте у рекрутера.