О проекте
Яндекс Еда — сервис доставки из ресторанов и магазинов с миллионами пользователей и заказов. Для машинного обучения это означает работу с большими данными, быструю проверку гипотез в A/B-тестах и обработку данных в реальном времени под нагрузкой.
Наша команда занимается алгоритмической и ML-составляющей ранжирования. Мы определяем порядок отображения:
— ресторанов — на главной странице;
— блюд — как внутри ресторана, так и на блюдоцентричных поверхностях;
— ресторанов и магазинов вместе — в тех местах, где вертикали пересекаются (например, в поиске);
— подборок заведений для офлайна (в разделе «Сходить»).
От наших моделей зависит, какие позиции пользователь увидит первыми и что в итоге закажет. В работе мы используем как классические методы ML, так и нейросетевые подходы.
Цикл ML-проекта
Вы будете преобразовывать бизнес-требования в ML-задачи, собирать пайплайн, обучать и проверять модель, внедрять её в реалтайм-сервис и тестировать с помощью A/B-теста.
Развитие продукта
Вам предстоит искать точки роста, предлагать и отстаивать свои идеи, а также запускать рекомендации на новых поверхностях и вертикалях. При этом нужно не только ранжировать по предпочтениям, но и учитывать доступность и загрузку ресторана, скорость и стоимость доставки, а также балансировать органику с рекламным продвижением.
Работа со смежниками
Вам нужно будет сотрудничать с продуктовыми командами, аналитиками и MLOps — решать общие задачи, проводить совместные эксперименты и защищать результаты.
Больше об ML в Яндексе — в канале Yandex for ML.
Требования
— Разрабатывали на Python или C++
— Хорошо знаете методы анализа данных и ML и применяли их на практике
— Готовы вести решение от обработки данных до внедрения в продакшен
— Делали рекомендательные системы или поиск
— Работали с высоконагруженными реалтайм-системами
Над чем мы работаем сейчас
— Дискавери на главной. Историю заказов уже закрывает отдельная карусель, но и на остальных поверхностях главной пользователь встречает в основном знакомые ему рестораны. Хотим, чтобы эти поверхности открывали новое — места, где человек ещё не заказывал, но закажет.
— Блюдоцентричное ранжирование. Учимся ранжировать не рестораны, а сами блюда — на поверхностях вне карточки ресторана.
— Общий поиск Еды. Ищем баланс между семантической релевантностью и бизнес-метриками.
— Ядро ранжирования. Новые факторы и новые архитектуры — сквозная задача для всех поверхностей сразу.
Что у нас есть
— Стек: Python, C++, SQL.
— Инфраструктура Яндекса: общие фреймворки, собственная A/B-платформа и вычислительные мощности.
Узнайте про разработку Городских сервисов Яндекса на dev.go.yandex.