Москва
backend
Разработчик цикла заказа такси в Яндекс Go
Фотография автора вакансии

Илья Сидоров

Руководитель разработки инфраструктуры пользовательских продуктов

Привет. Наша команда разрабатывает платформу, на которой работает цикл обработки заказов в разных сервисах: Такси, Еды, Лавки и Логистики. Мы расширяемся, и поэтому нам сейчас нужны люди на разные проекты.

Чем предстоит заниматься

У нас есть несколько горящих проектов на выбор:

— Управление базой данных заказов в такси

У нас большая шардированная база mongodb с заказами, в которую ходит много клиентов, совершая десятки тысяч запросов в секунду. Мы хотим сделать сервис прокси, в который будут обращаться клиенты. Мы верим, что это поможет нам достичь доступности 99,99% (меньше часа недоступности в год). Сервис прокси даёт нам большое поле для улучшений — начиная с того, чтобы не разрешать делать пользователям плохие запросы и заканчивая сложными стратегиями плавной деградации. Например, можно отключать некритичных потребителей в случае проблем с железом или сверхнагрузкой.

— Новый протокол для заказа такси

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

— Развитие инфраструктуры конструирования бизнесов

Мы хотим, чтобы любой бизнес — заказа такси, платежа, или работы курьера — можно было построить из готовых кубиков, как конструктор. Наша команда и занимается созданием этих компонентов. Мы расширяем спектр возможностей, которые предоставляем нашим клиентам и постоянно пробуем новые подходы: базы данных, архитектурные приёмы для того, чтобы стать ещё надёжнее и легче масштабироваться. У нас кубики, с помощью которых можно описать конечные автоматы, асинхронно выполнять задачи, проводить а/б-эксперименты, мультиплексировать запросы из разных микросервисов, распространять конфигурации. Мы работаем над тем, чтобы систематизировать их все и сделать удобными для использования, упростить онбординг.

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

Мы ждем, что вы:

  • хорошо понимаете классические алгоритмы и структуры данных;
  • занимались многопоточным программированием и разрабатывали высоконагруженные распределенные приложения;
  • любите и умеете продумывать свои решения, учитываете все corner cases и отлавливаете race conditions (написать всё в одной транзакции к MySQL не получится);
  • умеете и любите писать автоматизированные тесты, понимаете важность покрытия кода тестами.
Фотография автора цитаты

Юрий Мещеряков

Head of Recruitment Екома и Райдтеха

У нас многоступенчатый отбор — так получается объективнее и быстрее. Сейчас вы отправите резюме, и если всё сложится, то в ближайшие 3-5 дней мы пришлём вам приглашение. Что ждёт вас дальше, читайте на странице для подготовки к интервью.