Собеседование на Data Engineer в Авито

Проверь себя · 1/3разбор после ответа
Вы сортируете товары по величине скидки discount по убыванию. discount может быть NULL (скидки нет). Чтобы товары без скидки всегда были внизу независимо от настроек СУБД, какой вариант сортировки выбрать?

Почему Авито — особенный работодатель для DE

Авито — крупнейший в России классифайд с десятками вертикалей (авто, недвижимость, работа, услуги). DE здесь работает с трёхсторонним рынком: пользователи (покупатели), продавцы, рекламодатели. Стек: Spark, Kafka, ClickHouse, Airflow, S3-совместимое хранилище.

Особенность: классифайд — двухсторонний рынок с длинным циклом сделки. DE-pipeline-ы обслуживают разные потребители: команды поиска, ранжирования, монетизации, антифрод. У Авито сильная аналитическая культура — DE здесь часто плотно работает с DS и продуктовыми аналитиками. Актуальные вакансии — на странице карьеры Авито.

Информация в статье основана на публичных источниках и опыте кандидатов. Формат собеседования отличается по командам и грейдам. Уточняйте у рекрутера.

Этапы собеседования

1. Скрининг с рекрутером (30 минут)

Опыт, мотивация. Особенности Авито:

  • Опыт с большими объёмами данных
  • Знание Spark, Kafka, Airflow
  • В какое направление интересно (рекомендации / монетизация / fraud / логистика)

2. SQL deep dive (60 минут)

Live-coding SQL на классифайд-данных: воронки контактов (просмотр → клик → звонок → сделка), retention объявлений, retention пользователей, ARPU рекламодателей. Подробнее — SQL на собесе.

3. Инструменты и архитектура (60-90 минут)

Темы:

  • Spark: optimization, partitioning, broadcast joins, shuffle
  • Kafka: partitions, retention, exactly-once
  • ClickHouse: MergeTree, replicated tables, materialized views
  • Airflow / Dagster: DAG-design, retry, idempotence

Подготовка: DE hub, Spark на собесе, Kafka на собесе.

4. Data modeling (45 минут)

«Спроектируй DWH для рекламной платформы», «как хранить historical view объявлений».

5. System design (60 минут)

«Спроектируй pipeline для real-time антифрода», «как обработать поток модерации объявлений».

6. Поведенческое (45 минут)

STAR-вопросы. Авито ценит самостоятельность и инициативу.

7. Финал с лидом DE

Стратегический разговор.

Что Авито ценит в DE

  • Опыт со Spark / Kafka. Большие объёмы — обязательно
  • Понимание классифайд-домена. Двухсторонний рынок + реклама + длинный цикл сделки
  • Скорость работы. Плоская структура, ожидается самостоятельность
  • Хорошая алгоритмика. На live-coding LeetCode Medium регулярно
  • Distributed systems. Понимание consistency, replication, partitioning

Типичные задачи и кейсы

  • «Spark job на партиционированной таблице падает с OOM. Гипотезы?»
  • «Late events из колл-центра приходят за неделю. Как обновлять funnel-метрики?»
  • «Спроектируй pipeline для real-time anti-fraud (детекция фейковых объявлений)»
  • «У нас 1B событий в день. Какую партиционную стратегию выбрать?»
  • «Как обеспечить exactly-once в Kafka pipeline с финансовыми событиями?»
Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Как готовиться: план

  1. SQL до автоматизма. Метрики классифайда: контакты, успешные сделки, retention объявлений и пользователей. SQL-раздел.
  2. Spark. «Spark: The Definitive Guide» + practical tuning через pet-project.
  3. Kafka. Книга + понимание exactly-once, partitioning, consumer groups.
  4. ClickHouse. Документация + practice.
  5. Distributed systems. «Designing Data-Intensive Applications» (Kleppmann).
  6. Алгоритмика. LeetCode Easy/Medium 50-100 задач.

Частые ошибки

  • Знать инструменты, не принципы. «Я работал со Spark» — мало. Объясни, почему shuffle медленный
  • Игнорировать data quality. В классифайде объявления модерируются — DE-pipeline должен учитывать это
  • Не учитывать рекламную составляющую. Авито зарабатывает на рекламе, эти данные — отдельный сложный pipeline
  • Слабая алгоритмика. Регулярно спрашивают LeetCode Medium на live-coding
  • Игнорировать масштабирование. Решение для 1M юзеров не подходит для 100M

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

FAQ

Сколько этапов в собеседовании на DE в Авито?

Обычно 5-7: рекрутер → SQL → инструменты → data modeling → system design → поведенческое → финал. Срок 3-5 недель.

Нужен ли опыт в классифайдах?

Не обязателен. Релевантен опыт с двухсторонними рынками — маркетплейсами, p2p-сервисами.

Какие инструменты обязательны?

SQL, Python, Spark — must. Airflow, Kafka — сильно желательно.

Спрашивают ли алгоритмы на собесе?

Да, активно. LeetCode Easy/Medium на live-coding.

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

Этапы основаны на публичных источниках и опыте кандидатов. Уточняйте у рекрутера.