Собеседование на Data Engineer в ДомКлик
status = 'paid') и отсортировать их по времени создания от новых к старым. Какой запрос соответствует задаче?Содержание:
Почему ДомКлик — особенный работодатель для DE
ДомКлик — PropTech-сервис Сбера: недвижимость, ипотека, сделки. Для дата-инженера здесь два больших вызова. Первый — грязные внешние данные: объявления приходят XML-фидами от тысяч агентств и застройщиков, у каждого свой формат, свои опечатки, дубли и устаревшие цены. Второй — гео: у каждого объекта есть координаты, адрес, район, и на этих данных строятся расчёты расстояний, привязка к инфраструктуре и ML-фичи для автоматической оценки стоимости (AVM, automated valuation model).
Плюс к этому — принадлежность к банковской экосистеме. Часть данных (ипотечные заявки, клиенты) — персональные и попадают под 152-ФЗ, а витрины ДомКлика интегрируются с банковским ядром Сбера. Поэтому DE тут работает не только с производительностью пайплайнов, но и с требованиями по безопасности и приватности данных. Стек: Spark, ClickHouse, Elasticsearch. Подробнее о вакансиях — на странице карьеры Сбера.
Информация в статье основана на публичных источниках и опыте кандидатов. Формат может отличаться по командам и грейдам. Уточняйте у рекрутера.
Этапы собеседования
Собеседование на DE в ДомКлик обычно проходит в 5–6 этапов: знакомство, SQL и Python, глубокий Spark, ClickHouse, архитектурный кейс и поведенческое интервью. Основной вес — на Spark и проектировании пайплайнов под грязные внешние данные.
1. Скрининг с рекрутером (30–40 минут)
Знакомство: опыт, проекты, мотивация идти в PropTech и банковскую экосистему. Уточняют глубину по Spark и ClickHouse, объёмы данных, с которыми вы работали, и в какое направление вам интересно. Полезно подготовить короткий рассказ о пайплайне, который вы построили и вывели в продакшен.
2. SQL и Python (60 минут)
Живое кодирование. По SQL — JOIN, оконные функции, дедупликация, обработка поздно приходящих данных. По Python — обработка данных и алгоритмические задачи. Уровень SQL — middle-senior, потому что дедупликация и очистка объявлений здесь ежедневная реальность.
3. Spark (60–90 минут)
Ключевой этап. Спрашивают устройство Spark: как работает распределённая обработка, что такое партиции и шафл, почему возникает перекос данных (data skew) и как с ним бороться, чем отличаются narrow- и wide-трансформации, как оптимизировать джобу. Часто дают задачу на обработку большого потока объявлений и просят рассуждать про производительность. Готовиться удобно по разбору Spark на собесе DE.
4. ClickHouse и хранилища (45–60 минут)
Проектирование витрин в ClickHouse: движки семейства MergeTree, ключ сортировки, партиционирование, материализованные представления. Могут спросить про Elasticsearch — как устроен поиск по объявлениям. Ждут понимания, когда колоночная база выигрывает и почему нельзя проектировать её как обычную OLTP-СУБД.
5. Архитектурный кейс (60–90 минут)
Открытая задача: спроектировать пайплайн вроде обработки XML-фидов агентств или гео-обогащения объявлений. Ждут, что вы проговорите путь данных целиком — приём, парсинг, дедупликацию, валидацию, обогащение, витрину, — а также обработку сбоев, бэкфилл и требования по приватности данных.
6. Поведенческое и финал (45 минут)
Интервью по методу STAR: как вы работали в кросс-функциональной команде, чинили сломавшийся пайплайн, действовали при инциденте с данными. Финал может вести руководитель — здесь проверяют инженерную зрелость и совпадение по ценностям.
Что ДомКлик ценит в DE
- Spark и ClickHouse. Глубокое понимание распределённой обработки и колоночного хранилища — ядро стека направления.
- Работа с грязными данными недвижимости. Умение парсить XML-фиды, чистить и дедуплицировать объявления, обрабатывать текст и гео.
- Интеграция со Сбером. Понимание, как витрины ДомКлика стыкуются с банковским ядром и учётными системами.
- Compliance и приватность. Знание, что часть данных персональные и попадают под 152-ФЗ, и умение это учитывать в пайплайне.
- Проектирование хранилищ. Опыт с DWH и витринами: как моделировать данные под аналитику и ML-фичи.
Типичные задачи и кейсы
- «Пайплайн XML-фидов агентств». Как принять, распарсить и дедуплицировать поток объявлений с тысячей разных форматов и опечаток.
- «Гео-пайплайны». Как обогатить объявления координатами, посчитать расстояния до инфраструктуры и привязать к районам.
- «ML-фичи для AVM». Как собрать признаки для модели автоматической оценки стоимости недвижимости и обновлять их регулярно.
- «Бэкфилл объявлений за месяц». Как безопасно пересчитать историю за период, не сломав действующие витрины.
- «Интеграция с банковским ядром». Как передавать данные между ДомКликом и системами Сбера с учётом требований по безопасности.
Как готовиться: план
- Spark вглубь. Партиции, шафл, перекос данных, оптимизация джоб, narrow/wide-трансформации. Spark на собесе DE.
- ClickHouse. Движки MergeTree, ключ сортировки, партиционирование, материализованные представления. ClickHouse и OLAP.
- Elasticsearch. Как устроен поиск и когда он уместнее реляционной базы.
- DWH и моделирование. Как проектировать витрины под аналитику и ML-фичи.
- SQL. Middle-senior: оконные функции, дедупликация, поздно приходящие данные. Подтянуть базу поможет тренажёр SQL.
Частые ошибки
- Слабый SQL. Дедупликация и очистка объявлений здесь ежедневны. Плавать в оконных функциях и обработке поздних данных нельзя.
- Spark поверхностно. Знать API, но не понимать шафл и перекос данных — провал на ключевом этапе. Ждут разговора про производительность, а не про синтаксис.
- Игнорировать compliance. Забыть, что часть данных персональные и попадают под 152-ФЗ, — красный флаг для банковской экосистемы.
Связанные темы
- Собеседование на DE в Циан
- Собеседование на DE в Сбере
- Spark на собесе DE
- Собеседование на DS в ДомКлик
- ClickHouse и OLAP
FAQ
Сколько этапов в собеседовании на DE в ДомКлик?
Обычно 5–6: скрининг, SQL и Python, глубокий Spark, ClickHouse, архитектурный кейс и поведенческое интервью. Основной вес — на Spark и проектировании пайплайнов.
Нужен ли опыт в недвижимости или банках?
Желателен, но не обязателен. Релевантен опыт с грязными внешними данными, парсингом, гео и большими пайплайнами. Специфику PropTech и требований банка можно подтянуть, если сильна инженерная база.
Какой уровень SQL ждут?
Middle-senior: JOIN, оконные функции, дедупликация, обработка поздно приходящих данных. Очистка и склейка объявлений — ежедневная задача, поэтому SQL должен быть уверенным.
Насколько глубоко спрашивают Spark?
Глубоко. Ждут понимания внутренностей: партиции, шафл, перекос данных, оптимизация джоб, разница narrow- и wide-трансформаций. Синтаксиса недостаточно — нужен разговор про производительность.
Это официальная информация?
Нет. Этапы основаны на публичных источниках и опыте кандидатов. Конкретный процесс зависит от команды и грейда — уточняйте у рекрутера.
Тренируйте Data Engineering — откройте тренажёр с 1500+ вопросами для собесов по SQL и инженерии данных.