Удалённый, Офис, Гибридный
Команда: Яндекс Еда
Описание
Мы ищем бэкенд-разработчика, который поможет развивать ML-инфраструктуру поиска и рекомендаций Яндекс Еды. Наши сервисы работают под высокой нагрузкой: например, через ранжирование главной страницы проходят тысячи запросов в секунду. При этом новые возможности рекомендаций напрямую влияют на пользовательский опыт и результаты бизнеса. Поэтому для нас одинаково важны скорость разработки, надёжность системы и эффективное использование вычислительных ресурсов. Основная часть сервисов написана на C++. Вам предстоит с первых задач развивать существующую кодовую базу.
Какие задачи вас ждут
Инфраструктура для моделей рекомендаций Мы строим production-инфраструктуру для моделей, которые улучшают поиск и рекомендации: от подготовки эмбеддингов и управления версиями до быстрого и надёжного инференса под реальной нагрузкой. Вы будете безопасно раскатывать новые версии, следить за согласованностью моделей и эмбеддингов, развивать мониторинг качества и быстро обнаруживать ухудшения ранжирования. Глубоко заниматься устройством самих нейросетей не потребуется: команда получает готовые модели и отвечает за их интеграцию и работу в продакшене. Платформа пользовательских профилей Мы хотим быстрее учитывать свежие сигналы о действиях пользователя в поиске и рекомендациях. Здесь много интересных задач по распределённым системам: обработка событий exactly-once, шардирование и обновление больших профилей, объединение сигналов из разных источников, согласованность онлайн- и офлайн-фич, восстановление данных и мониторинг всего пути от события до ответа модели. Предстоит работать с потоковой обработкой данных, динамическими таблицами и распределёнными хранилищами. Вы сможете повлиять на архитектуру платформы для разных ML-команд. Межсервисное взаимодействие Вы будете участвовать в развитии взаимодействия сервисов на базе gRPC: проектировать Protobuf-контракты, улучшать общие инструменты и библиотеки, а также обеспечивать надёжность сервисных интеграций. Больше о бэкенде в Яндексе — в канале Yandex for Backend
Мы ждём, что вы
Занимались бэкенд-разработкой на C++ и готовы с первых задач работать с большой существующей кодовой базой Понимаете, как проектировать и эксплуатировать высоконагруженные сервисы и распределённые системы Умеете самостоятельно разбираться в сложной задаче, договариваться со смежными командами и доводить решение до продакшена Интересуетесь рекомендательными системами и инфраструктурой вокруг ML. Знакомство с RecSys и современными ML-моделями будет полезно, но глубоких знаний об устройстве нейросетей мы не требуем
Будет плюсом, если вы
Уверенно владеете Python Работали с рекомендательными или поисковыми системами либо с MLOps Знакомы с gRPC, Protobuf, userver, потоковой обработкой данных или распределёнными хранилищами Узнайте про разработку Городских сервисов Яндекса на dev.go.yandex