Содержание
Содержание
Как мы нанимаем ML‑специалистов

Как всё устроено

Этапы

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

Трек собеседований

Трек собеседований у нас индивидуальный. Мы хотим подробно поговорить о вашей экспертизе, поэтому ставим секции в зависимости от вашего опыта: проводим интервью как на базовые знания в ML, так и на понимание конкретной области.

Как проходят этапы

Всего вам нужно будет пройти 3–4 технические встречи. Это можно сделать за один день или разделить на несколько. Вы получите фидбэк в течение трёх дней после интервью.

Для собеседования через Zoom вам понадобится ноутбук с камерой и клавиатурой, чтобы писать код или обсуждать задачи, связанные с машинным обучением.

2-3 недели

общая длительность всех собеседований

1 час

длительность каждого интервью

Онлайн

Встречи в Zoom с камерой и возможностью демонстрировать экран

Знакомство с рекрутером

Поговорим о вашем опыте, обсудим профессиональные интересы и расскажем про открытые роли и процесс найма.

Секция ML & Programming

Секция ML & Programming включает в себя разговор о базовых понятиях и концепциях в ML на примере какого-либо алгоритма машинного обучения, проверку знания offline-метрик и решение задач на программирование, которые связаны со знанием алгоритмов и структур данных.

Секция с написанием кода

Содержит задачи на кодинг/алгоритмы и структуры данных. Как правило, интервьюер даёт две задачи. Также вас могут спросить об опыте и работе с разными технологиями (ЯП, ОС, БД). На собеседовании нужно писать код в онлайн-редакторе.

ML инженеры в Яндексе занимаются не только исследовательскими задачами и обучением моделей, но и выводят их в продакшен, поэтому для нас важно, чтобы ML разработчики умели писать код.

#

Секция ML Special

Опытным кандидатам мы предлагаем пройти узкоспециализированную секцию ML Special, на которой предполагается обсуждение глубоких вопросов внутри конкретного домена или стека технологий ML: CV, NLP, RecSys, ASR/TTS, Classic ML.

В выборе практической задачи для обсуждения мы исходим из вашего релевантного опыта в области ML. Мы хотим, чтобы вы успешно продемонстрировали свои знания и умения.

В зависимости от вашего опыта мы обсудим различные темы

Поговорим о современных подходах к решению NLP-задач различной сложности и об исследовании архитектур NLP-моделей, если у вас есть такой опыт: обсудим GPT-like- и BERT-модели, encoder-decoder-архитектуры, SoTA-подходы к обучению языковых моделей.

Полезные ресурсы


Кандидатам с опытом архитектурных решений мы предлагаем пройти секцию ML System design, которая позволяет продемонстрировать навыки и опыт работы с продакшн системами на базе ML, широкий кругозор, умение корректно формулировать свои мысли.

Поговорим о современных подходах к решению CV-задач, а также о популярных архитектурных решениях на примерах трансформерных и сверточных моделей. Обсудим, как эффективно обучать, дебажить и применять модели.

Полезные ресурсы

Поговорим про ваш опыт использования интересных архитектур ASR/TTS: решаемая задача, данные, метрики и другое, любимые статьи по теме за последние 2 года, ваши знания по архитектурам нейронных сетей, их деплой и оптимизацию, а также метрики (online, offline, проблемы в оценке), данные и сложности, с которыми вы сталкивались при решении задач в области.

Поговорим про то как использовать алгоритмы машинного обучения и нейросети для решения задачи рекомендательной системы: верхнеуровневый дизайн общей архитектуры рексистемы, метрики, данные, различные стадии рексистем и какие модели на них можно использовать, дизайн ранжирования и генерации кандидатов. А ещё о проблемах, которые могут возникать в рамках рексистем (например, с разнообразием).

Полезные ресурсы

Поговорим про то как использовать классические алгоритмы машинного обучения и стандартные архитектуры нейросетей для решения продуктовых задач: ML-постановка задачи, верхнеуровневый дизайн общей архитектуры решения, сбор обучающих выборок и таргетов, корректная обработка данных и признаков разной природы, обучение и выбор модели, формулировка офлайн- и онлайн-метрик (общих и специфичных для какого-либо кейса — например, для ранжирования или для uplift-моделирования).

Полезные ресурсы

Финалы с командами

Финал — это встреча с руководителем команды, но могут присоединиться и другие разработчики, и менеджеры из проекта.

На этом этапе вы подробнее узнаете о сервисе, задачах и проектах направления. В некоторых случаях, когда нам не хватило информации по итогам основных технических интервью, на финальной встрече мы можем задать технические задачи или вопросы. О таком формате мы обязательно предупредим заранее. На этой встрече вы с руководителем поймёте, насколько вам комфортно будет работать друг с другом в перспективе. Поэтому важно открыто рассказывать о вашем предыдущем опыте, профессиональных интересах и целях, не стесняться задавать вопросы.

Не стесняйтесь уточнять все интересующие вас моменты, чтобы сделать осознанный выбор проекта.

Офер

Приглашение в одну из команд, которая заинтересовала вас больше других. Рассказ об условиях работы и карьерных возможностях.

Как повысить шанс на успех

  • Формулируйте решение вслух, нам важно знать, как именно вы думаете,  решая задачу.
  • Пишите читаемый код без ошибок, не усложняйте его.
  • Приготовьтесь решать небольшие задачи в уме — без запуска кода в консоли. Не отдавайте решение, пока не уверены, что оно рабочее.
  • Помните о краевых случаях. Напишите тест‑кейсы и проверьте их.