Что спрашивают на технических собесах ML-инженеров, data scientist и LLM-инженеров: теорию, код и головоломки. Цифры посчитаны по записям реальных собесов, а все найденные вопросы и задачи собраны в колоды для подготовки.
Коротко
244 собесарусских технических собесов в разборе
Что учить в первую очередь, по трекам.
Частая - та, которую в треке спрашивают заметно чаще средней идеи этого трека.
Самые частые идеи теории по трекам
| ML | DS | AI |
|---|---|---|
| Обзор метрик классификации, 23% | ROC-кривая и площадь AUC, 26% | Архитектура и блоки трансформера, 38% |
| Способы борьбы с переобучением, 21% | Обзор метрик классификации, 26% | Энкодерные и декодерные архитектуры, 31% |
| Механизм attention и матрицы QKV, 19% | Принцип последовательного обучения бустинга, 23% | |
| Accuracy и дисбаланс классов, 14% | Устройство случайного леса, 23% | |
| ROC-кривая и площадь AUC, 14% | Антиградиент и таргет следующего дерева, 19% |
Теорию спрашивают на 78-92% собесов трека, и после главного вопроса в 70% случаев идут уточнения. Код дают на 52% собесов DS и реже в AI.
Где готовиться:
- ML Systematic V2 - все идеи теории по трекам: на скольких собесах спрашивали и как именно формулировали;
- ML Systematic Practice - задачи на код с собесов, условия сверены с тем, как их давали, и счетчик "на N собесах";
- ML Головоломки - головоломки с собесов с разбором;
- Google-таблица каталога - весь каталог теории одной таблицей: раздел, тема, идея, формулировки, доли по трекам и фильтры.
Откуда цифры
167 собесовтрех треков в базе теории
Источник - записи технических собесов из открытых каналов. Записи расшифрованы, модель поставила каждому вопросу интервьюера тему из общего словаря, затем вопросы каждой темы разложены по идеям.
- Всего 244 русских размеченных собесов трех треков: ML, DS и AI. Трек поставлен при разметке по роли и содержанию собеса: ML-инженер, data scientist, LLM-инженер. Собесы аналитиков, DE и других ролей не берем. Повторные копии одной записи убраны. Английские записи тоже не берем: распознавание речи делает из них кашу.
- Теория считается по 167 собесам, где теория - основная часть собеса: ML 78, DS 57, AI 32.
- Задачи на код - по 100 собесам из 244, где интервьюер дал задачу на код. Головоломки - по всем 244.
Каждый собес считается один раз, сколько бы раз на нем ни возвращались к теме. "Спросили" значит, что интервьюер задал по теме хотя бы один вопрос. Рядом с долей стоит : настоящая доля почти наверняка внутри него.
Раздел - группа близких тем, например "Деревья и ансамбли"; тема - узкая тема, например "Градиентный бустинг"; идея - один смысловой вопрос в любых формулировках, например "как устроен случайный лес".
Теория по трекам
16разделов теории
Доля собесов трека, где спросили раздел, сверху самый частый.
Разделы теории: ML, 78 собесов
Разделы теории: DS, 57 собесов
Разделы теории: AI, 32 собеса
Что трек спрашивает чаще двух других, причем разница больше случайного разброса:
- ML: математика и оптимизация - 36%; компьютерное зрение - 21%.
- DS: построение и валидация моделей - 74%; деревья и ансамбли - 65%; классические модели ML - 60%; статистика и эксперименты - 51%; алгоритмы и структуры данных - 44%; SQL и базы данных - 42%.
- AI: NLP и языковые модели - 84%; прикладные LLM - 84%.
Пример частой - обзор метрик классификации: 18 из 78 собесов ML, 23% (14-34%). Спрашивают так: "Какие метрики классификации вы знаете?", "Что такое accuracy, precision и recall?". Все идеи с долями и формулировками - в колоде ML Systematic V2 и Google-таблице.
Лайвкодинг
100 из 244собесов с задачей на код
Конкретные задачи повторяются редко. Повторяются приемы.
Задача на код была на 100 из 244 собесов. Конкретные задачи повторяются редко: из 183 задач колоды, которые давали на собесах, 164 дали ровно на одном. Чаще всего, на 3 собесах из 100, давали "Implement Rand3 using Rand2", "Группировка анаграмм за O(N * K)", "Произведение массива кроме самого элемента", "Слияние двух отсортированных списков" и "Топ-3 зарплаты в каждом департаменте".
Больше всего задач на оконные функции SQL - 21 задача, их давали 27 раз. Дальше агрегации SQL (14 задач), джойны SQL, массивы и хеш-таблицы (по 6-9 задач).
Слияние двух отсортированных списков
Даны два отсортированных списка. Слейте их в один отсортированный список.
На собесах добавляли:
- Задачу давали как реализацию физического соединения из СУБД: просили объяснить hash join, nested loop и merge join, затем слить списки без сортировки, как в merge join.
- Уточняли, что длины списков не обязательно равны, и просили дописать оставшиеся элементы.
- Просили упростить два хвостовых цикла while до добавления срезов.
Все задачи - в колоде ML Systematic Practice, у каждой счетчик "на N собесах из 100".
Головоломки
40 из 244собесов с головоломкой
Задачи без кода: вероятность, статистика, математика ML и другие.
Головоломку давали на 40 из 244 собесов: 57 головоломок 45 видов. Больше всего - на вероятность (32 из 57), дальше статистика (10) и математика ML (5). Повторились 7 видов, самые частые - на 4 собесах.
Двусторонняя монета среди тысячи честных
Из 1000 монет одна фальшивая - орел с обеих сторон, остальные 999 честные. Наугад берут монету и подбрасывают ее 10 раз. Все 10 раз выпал орел.
Какова вероятность, что взята фальшивая монета?
На собесах спрашивали:
- А если монет всего три (две честные, одна всегда дает орла) и бросили один раз, выпал орел?
Во сколько раз бэггинг снижает дисперсию
Бэггинг усредняет предсказания базовых моделей (например, деревьев случайного леса). Дисперсия предсказания одной модели равна 100.
Чему равна дисперсия усредненного предсказания, как она зависит от и при каком допущении?
На собесах спрашивали:
- А если модели не независимы, а попарно коррелированы с коэффициентом ?
Положительный тест на редкую болезнь
Болезнью болеет 1 человек из 100. Тест ошибается в 1% случаев: у больного он положителен с вероятностью 99%, у здорового отрицателен с вероятностью 99%.
У пациента тест положительный. Какова вероятность, что он действительно болен?
На собесах спрашивали:
- А если болезнь встречается у 1 человека на миллион, а точность теста те же 99%? Оцените интуитивно.
Все головоломки - в колоде ML Головоломки: условие сверено с записью собеса, у каждой есть разбор.