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