Что означают `_attr` и `__attr` в Python class, и чем convention отличается от name mangling?
Банк вопросов из реальных собеседований
Направления, темы и вопросы из записей интервью. Фильтры ниже сохраняются в ссылке.
Все вопросы
673Полный банк вопросов из реальных собеседований.
ML-теория
119Классический ML, нейросети, NLP, CV и RecSys без длинного кейса.
Python
67Устройство языка, структуры данных, тестирование и инженерная база.
SQL
12Запросы, агрегации, оконные функции и объяснение результата.
ML System Design
259Архитектура ML-сервиса, данные, обучение, инференс, мониторинг и откат версии.
Метрики и A/B
101Качество моделей, продуктовые метрики, эксперименты и валидация.
Продуктовые кейсы
72Как разложить задачу продукта, ограничения, риски и первый бейзлайн.
Математика и статистика
18Вероятность, статистика, оценки, распределения и аккуратные допущения.
Behavioral Interview
25Ответственность за задачу, конфликты, мотивация, коммуникация и работа с фидбеком.
Python
67 вопросов из реальных интервью
Python dict lookup, декораторы и генераторы
Базовые проверки аномалий в sales DataFrame
Если у функции несколько decorators, в каком порядке они применяются при объявлении и в каком порядке выполняются при вызове?
In Python, what actually makes a tuple: parentheses or comma? Give examples.
What is a Python context manager, what do __enter__ and __exit__ do, and why not just wait for garbage collection?
Интервьюер спрашивает про pytest fixtures: зачем они нужны и какие scopes у них бывают?
Что произойдет, если присвоить один список другой переменной и изменить его? Чем отличаются shallow copy и deep copy?
Интервьюер просит рассказать SOLID: какие есть принципы и зачем они нужны в поддерживаемом коде.
Когда использовать async, threading и multiprocessing в Python, и как GIL влияет на этот выбор?
Как не заблокировать систему, если fallback или cleanup тоже может упасть?
Нужно устно спроектировать простой in-memory векторный поиск: add, search top-K, cosine similarity, stats. На что обратить внимание?
Какие edge cases появляются, если LRU cache должен хранить любые пользовательские значения?
LTV-метрики, когда бизнесу нужна консервативная оценка
You need to forecast how long a ship will wait at a port. How would you define the ML target, time granularity and prediction horizon so the result is useful for operations?
Что такое GIL в CPython, когда использовать multiprocessing вместо multithreading и как работает garbage collection?
Python-сервис под нагрузкой потребляет много CPU или памяти. Как диагностировать и что можно делать, если проблема действительно в Python-коде?
Какие базовые runtime-вопросы по Python часто идут после алгоритмической задачи?
Какой backoff выбрать для retry и зачем добавлять jitter?
ROC-AUC, ранжирующая интерпретация и бинаризованные предсказания
Чем отличаются RDD, DataFrame и Dataset в Spark? Почему DataFrame обычно быстрее, и как использовать repartition, coalesce, cache и persist?
Как должен выглядеть stream job, который считает CTR по campaign_id и временным окнам?
Why does a custom nn.Module need super().__init__()? Separately, why is tags=[] as a default argument in Python dangerous?
Does Python int overflow? How can you roughly estimate how much memory n! needs without computing the factorial?
What happens under the hood in a Python for-loop? How do iterators and generators differ, and what is StopIteration?
How does @dataclass reduce boilerplate, what does frozen=True do, and how do descriptors or properties relate to attribute access?
Explain what the GIL is, why CPython has it, and what happens at a high level when you run a Python file.
How are arguments passed to functions in Python? What happens if a function mutates a list argument versus reassigning an immutable value?
Write and explain a function decorator that logs calls. What does functools.wraps preserve? How would a decorator with arguments lazily import modules only when the function is called?
You review code that loops over texts, calls an embedding model one by one and appends outputs to a NumPy array. What would you improve?
You can run four Python applications as systemd services on one VM or as four containers. What practical guarantees do containers add?
Какие генераторы кандидатов можно использовать в рекомендательной системе? Где в этом стеке находится ALS по implicit feedback, в чем его сильные стороны и ограничения?
Градиентный бустинг, остатки и диапазон предсказаний
Что такое декоратор, зачем он нужен, и почему код внутри генератора выполняется не при создании, а при итерации?
Объясни разницу между async Lock, Event и Semaphore и где они нужны в backend-коде.
Как работает async/await в Python и чем concurrency через event loop отличается от parallel execution?
Зачем нужны MLflow, пайплайны, PySpark и Feature Store в production ML?
В Python есть код со списками, ссылками на объекты, циклическими ссылками и mutable default arguments. Как пройтись по нему и объяснить, что останется в памяти и почему?
Как задать LTV-таргет и первый когортный бейзлайн
Модель дает prediction для trading/time-series задачи. Как оценить confidence и использовать его в решении?
Бизнес хочет понимать, вернется ли пользователь и стоит ли давать ему скидку. Как сформулировать ML-задачу, таргет и признаки?
На собеседовании показывают класс, который читает файл, хранит DataFrame и делает обработку. Какие проблемы искать в таком коде?
Объясни, как работает Python dict и чем обычный list отличается от NumPy array.
Какие нейросетевые подходы можно использовать в RecSys и где они стоят в пайплайне?
Когда пробовать бустинг для прогноза LTV
Что именно считать в метриках: timestamps, длительность операции или сами значения ошибки?
Для нового игрока нужно понять, когда уже можно доверять прогнозу VIP-статуса. Как оценить, на каком дне жизни клиента модель дает достаточно полезный сигнал?
Backend-сервис на Python стал медленным под нагрузкой. Как бы ты локализовал bottleneck и понял, что именно оптимизировать?
Как перевести исследовательский ноутбук с LTV-моделью в воспроизводимое обучение, хранение версий, деплой и инференс/API предсказаний?
Чем отличаются потоки и процессы? Что такое GIL в CPython, когда нужны синхронизация и IPC?
Объясните, как устроен hash table в Python dict и почему операции lookup/insert обычно O(1), но иногда деградируют.
Признаки из истории подписок для частично наблюдаемых пользователей
Как проверять код студента и давать подсказку, не раскрывая готовое решение?
Сравните сложности добавления и доступа для односвязного списка, Python list, Python dict и конкатенации строк. Где нужен amortized O(1), а где важен worst-case?
За сколько вставить n различных строк длины k в Python set? Что изменится, если hash для всех объектов возвращает одно и то же значение?
За сколько работает добавление элемента в начало и в конец Python list? Почему append в конец обычно O(1), но не всегда строго O(1)?
Как считать attempts в retry-декораторе так, чтобы логи и метрики не искажали реальное число вызовов?
Когда выбирать потоки, когда процессы, и как GIL влияет на CPU-bound и IO-bound задачи?
Объясните, что делает await в asyncio и почему он важен для неблокирующего сервиса.
How can a forecasting system support multiple prediction horizons, and what does it mean that SHAP is model-agnostic?
Есть legacy C-компонент и желание дать пользователям удобный Python/API слой. Как рассуждать: делать обертку вокруг C или полностью переписывать реализацию на Python?
После BM25 baseline нужно усилить поиск по статьям. Как спроектировать candidate generator, hybrid retrieval и reranker?
Как должен выглядеть stream job для CTR dashboard: что он читает, что считает и куда пишет результат для графика рекламодателя?
Даны trades и order book. Как сформулировать target для предсказания будущего движения mid-price?
В Waymo уже есть perception, prediction и map stack. Как использовать этот контекст при проектировании поиска дорожных сцен по тексту?
В истории заявок можно использовать winner label, bid/no-bid, ручное удаление поставщика и другие события. Какие labels и метрики выбрать для candidate generator и ranker?
Если поток CTR dashboard - миллионы событий в секунду, как оценить число partitions/workers и где искать bottleneck?