Yandex Careers · собрана 22 дня назад

Разработчик на C++ в Яндекс Еду

Yandex

ГибридОфисЛокация не определена
C++

Описание вакансии

Наша команда отвечает за поиск и рекомендации в приложении Яндекс Еды. Мы ищем разработчика на C++, который будет развивать поиск по миллионам товаров, блюд и заведений с учётом географии, времени доставки, графика работы и других факторов. Ждём, что вы разрабатывали бэкенд и работали с PostgreSQL. Наша команда отвечает за поиск и рекомендации в приложении Яндекс Еды. Поиск — это сердце приложения. Из-за большого количества заведений и предложений невозможно представить успешный пользовательский сценарий без использования поиска. Мы экономим время наших пользователей, позволяя им максимально быстро находить нужный товар и сравнивать его с аналогами. Яндекс Еда активно развивается, товаров становится всё больше — мы предоставляем удобные инструменты для выбора оптимального предложения. Вести крупные изменения в поиске end-to-end Вы будете отвечать за бэкенд крупных инициатив — от идеи и RFC до выката в продакшен и анализа результата. Например, настраивать поиск с учётом специфики новой вертикали: работать с разными сущностями — ресторанами, блюдами, товарами, лекарствами или цветами; учитывать пользовательские сценарии, правила отображения, фильтры, доступность предложений и бизнес-ограничения. Нужно будет погружаться в продуктовую проблему, проектировать техническое решение, согласовывать его со смежными командами, писать код и безопасно раскатывать его на пользователей. Развивать поиск по миллионам товаров, блюд и заведений В Яндекс Еде есть большой и постоянно меняющийся каталог: рестораны, блюда, продукты, аптеки, цветы, dineout и т. д. Вам предстоит развивать общий поиск так, чтобы он быстро и стабильно работал на большом объёме данных и при этом учитывал специфику разных вертикалей: географию, время доставки, расписание заведений, промо и другие факторы, которые влияют на выбор пользователя. Работать над качеством и релевантностью поисковой выдачи Поиск должен помогать пользователю быстро находить именно то, что он имел в виду. Вместе с аналитиками, ML-разработчиками и продактами вы будете разбирать пользовательские сценарии, проблемные запросы, пустые и нерелевантные выдачи, формулировать гипотезы и проверять их в продукте. Со стороны бэкенда нужно будет интегрировать готовые ML-решения в поисковый сценарий и закладывать возможность экспериментов с разными моделями. Проектировать архитектуру поисковых сервисов Предстоит развивать бэкенд-сервисы, которые отвечают за поиск, индексацию, получение и обогащение данных, формирование выдачи и интеграции со смежными системами. Нужно будет принимать архитектурные решения с учётом высокой нагрузки, низкой latency, отказоустойчивости, роста каталога и специфики разных вертикалей. Отвечать за стабильность, скорость и качество поиска в проде Поиском каждый день пользуются миллионы людей, поэтому важны не только новые фичи, но и надёжная эксплуатация. Вы будете развивать мониторинги и алерты, разбирать деградации, оптимизировать latency, помогать сервисам выдерживать пиковую нагрузку и продумывать фолбэки, чтобы поиск оставался быстрым и устойчивым. Больше о бэкенде в Яндексе — в канале Yandex for Backend * Разрабатывали бэкенд, имели дело с высоконагруженными системами * Работали с PostgreSQL или другими реляционными базами данных, умеете их эксплуатировать под нагрузкой * Хорошо знаете и понимаете C++, STL, классические алгоритмы и структуры данных * Умеете согласовывать требования со смежными командами или продакт-менеджерами * Работали с очередями сообщений: Kafka, RabbitMQ * Использовали фреймворк userver * Умеете проектировать микросервисную архитектуру * Знакомы с продуктовыми метриками Узнайте про разработку Городских сервисов Яндекса на [dev.go.yandex]()