К обычному разбору
Тренировка по собеседованиюСкринингDodo2026-04-15

Dodo: Скрининг

Идите сверху вниз: сначала попробуйте сами, затем откройте разбор. Если шаг с кодом, пишите решение прямо здесь и запускайте проверки на странице.

Шагов
4
Вопросов
4
Задач
0
1Вопрос6 мин

A/B-тесты в рекомендательных системах

Как объяснить роль A/B-теста при проверке изменений в рекомендательной системе?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Показать разбор

Короткий ответ

A/B нужен, чтобы проверить causal impact модели на продукт: conversion, GMV/AOV, add-to-cart, retention. Параллельно ставим guardrails: latency, ошибки, отмены, негатив, fairness/coverage.

Подробный разбор

Offline-метрики нужны для отбора моделей, но финальное решение по RecSys принимается через online experiment. В A/B фиксируем единицу рандомизации, длительность, основную метрику и guardrails.

Для рекомендаций основная метрика зависит от места в продукте: CTR, add-to-cart, conversion, GMV, AOV, repeat purchase, retention. Guardrails: latency, error rate, empty recommendations, cancellation/refund, complaints, diversity, coverage, доля промо или маржинальных товаров.

Важно помнить про interference: рекомендации могут менять поведение продавцов, остатки, цены и доступность. Для маркетплейса иногда нужен split по пользователям, регионам, магазинам или кластерам, если есть сильное взаимодействие между участниками.

Типичные ошибки

  • Ограничиться CTR и не назвать бизнес-метрику.
  • Не упомянуть guardrails.
  • Считать offline uplift достаточным доказательством.

Как сказать на собеседовании

  • Назови primary metric, guardrails и split unit.
  • Отдели offline validation от online experiment.
2Вопрос7 мин

Из каких этапов состоит современная рекомендательная система

Из каких двух основных этапов обычно состоит рекомендательная система? Объясните candidate generation и ranking коротко, но не поверхностно.

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Показать разбор

Короткий ответ

Обычно есть candidate generation, где быстро набираем сотни/тысячи кандидатов, и ranking/reranking, где более дорогая модель сортирует top-K под цель продукта.

Подробный разбор

Базовый ответ: современная RecSys часто делится на два крупных этапа. Первый - candidate generation. Он должен быстро найти ограниченный набор потенциально релевантных объектов из большого каталога: через популярное, item-item, user-item, two-tower, ANN или бизнесовые правила.

Второй этап - ranking или reranking. Здесь кандидатов уже мало, поэтому можно использовать более богатые признаки: пользователь, товар, контекст, цена, наличие, история, свежесть, промо, diversity. На выходе система выбирает top-K и применяет фильтры/ограничения.

Хорошо добавить, что вокруг этих этапов есть retrieval storage, feature store, online serving, A/B-тесты, мониторинг и fallback. Но сначала важно назвать два главных контура и объяснить, зачем они разделены.

Типичные ошибки

  • Говорить только "модель рекомендует товары" без разделения retrieval и ranking.
  • Не объяснить, зачем нужен candidate generation.
  • Забыть про фильтры доступности и бизнес-ограничения после ранжирования.

Как сказать на собеседовании

  • Начни с candidate generation и ranking.
  • Приведи пример: миллион товаров -> тысяча кандидатов -> десять рекомендаций.
3Вопрос7 мин

Что такое cold start для пользователя и item

Как объяснить cold start в RecSys и какие практичные решения предложить для нового пользователя и нового item?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Показать разбор

Короткий ответ

Cold start - ситуация, когда мало истории по пользователю или объекту. Лечится контентными признаками, контекстом, популярным, onboarding-сигналами и controlled exploration.

Подробный разбор

Cold start для пользователя означает, что у нас нет или мало его истории: кликов, заказов, оценок, долгосрочных интересов. Тогда используем контекст: город, ресторан/магазин, устройство, время, текущая сессия, onboarding-вопросы, популярное в сегменте.

Cold start для item означает, что новый товар еще не получил кликов/покупок, поэтому collaborative signals слабые. Здесь помогают контентные признаки: категория, текст, картинка, цена, бренд, состав, ресторан, маржа, наличие. Также можно дать новому item небольшую controlled exploration квоту, чтобы собрать первые сигналы.

В проде нужен fallback cascade: персональные рекомендации, популярное в сегменте, популярное глобально, curated/business rules. Метрики: доля cold-start traffic, coverage новых items, CTR/conversion по fallback-уровням, негативный feedback.

Типичные ошибки

  • Обсуждать только новых пользователей и забыть про новые items.
  • Предлагать только популярное без сегментации и exploration.
  • Не измерять coverage новых товаров.

Как сказать на собеседовании

  • Раздели user cold start и item cold start.
  • Назови content features и fallback cascade.
4Вопрос8 мин

Зачем нужны MLflow, пайплайны, PySpark и Feature Store в production ML

Зачем нужны MLflow, пайплайны, PySpark и Feature Store в production ML?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Показать разбор

Короткий ответ

Pipeline воспроизводимо готовит данные и обучает модель, MLflow хранит эксперименты/артефакты, Feature Store синхронизирует offline и online признаки и помогает с freshness.

Подробный разбор

Production ML требует повторяемого контура. Pipeline описывает шаги: сбор данных, чистка, расчет признаков, обучение, валидация, публикация артефакта. PySpark часто нужен, если признаки считаются на больших событиях.

MLflow или аналог хранит эксперименты: параметры, метрики, версии датасетов, model artifacts, кто и когда обучил модель. Это помогает сравнивать версии и откатываться.

Feature Store решает проблему признаков: единое место, где считаются и версионируются признаки для обучения и serving. Особенно важно не получить training-serving skew, когда offline модель обучалась на одних признаках, а online получает другие или устаревшие.

Типичные ошибки

  • Перечислить инструменты без объяснения, какую проблему они решают.
  • Не упомянуть training-serving skew.
  • Забыть про версионирование данных и моделей.

Как сказать на собеседовании

  • Для каждого инструмента скажи одну решаемую проблему.
  • Свяжи Feature Store со свежестью и консистентностью признаков.