Яндекс · Санкт-Петербург, Москва · по договорённости
Яндекс Лавка — сервис быстрой доставки продуктов и товаров первой необходимости. Наша команда разрабатывает бэкенд платформы, которая автоматизирует бизнес-процессы на складах Лавки. Мы отслеживаем в реальном времени, сколько продуктов и на каких полках хранится в каждом дарксторе, и помогаем совершенствовать складские процессы. Благодаря нашей системе кладовщики быстро и чётко собирают заказы, а курьеры и роботы доставки привозят только свежие продукты.
Мы используем:
• Python 3, asyncio, aiohttp, asyncpg, pytest
• шардированный PostgreSQL как основную базу данных
• MongoDB для сервера доставки событий на фронтенд
• ClickHouse для аналитики
• Amazon SQS для очереди сообщений
• OpenAPI для взаимодействия с фронтендом (React и Vue), мобильными приложениями и внешними сервисами
• Docker для локальной разработки и деплоя
• покрытие кода тестами — более 90%
• AI-инструменты
Что предстоит делать:
Развитие продукта
Вам предстоит автоматизировать сложные бизнес-процессы, связанные с жизненным циклом товаров на складах и доставкой заказов клиентам, разработать инфраструктуру для сбора и отображения метрик в реальном времени, создавать идемпотентные и асинхронные API, интегрироваться с внешними сервисами, работать в кросс-функциональной команде и тесно сотрудничать с продактами, аналитиками, дизайнерами и тестировщиками.
Совершенствование архитектуры системы
Чтобы поддержать рост Лавки, нам нужно создавать гибкие, масштабируемые и отказоустойчивые сервисы. Мы постоянно улучшаем техническую архитектуру, внедряя новшества без ущерба для скорости разработки и стабильности работы. Сейчас перед нами стоит большая задача: распиливать монолит и добавлять сервисы на Go. В данный момент уже есть пара сервисов на Go.
Поддержка культуры разработки и стабильности сервиса
Нужно будет осмысленно проводить код-ревью, держать codecoverage близким к 90%, улучшать мониторинги и алерты для сохранения uptime 99,9%.
Больше о бэкенде в Яндексе — в канале Yandex for Backend
Требования:
• Уверенно знаете Python
• Работали с базами данных: SQL, NoSQL
• Понимаете, зачем нужна денормализация данных, где и когда использовать документоориентированные и колоночные СУБД
• Умеете писать тесты и понимаете, как они делают жизнь разработчика и всех вокруг лучше
• Занимались разработкой веб-приложений
• Понимаете, как устроены *nix-подобные операционные системы
• Способны работать в команде и самостоятельно
• Готовы быстро расти вместе с Лавкой
Будет плюсом:
• Понимаете нюансы асинхронного программирования на Python: где его можно использовать, а где не стоит
• Работали с PostgreSQL
• Разрабатывали высоконагруженные веб-приложения и распределённые системы обработки данных с тысячами RPS и миллионами записей
• Разрабатывали приложения на Go
• Проектировали и разрабатывали сервисы с нуля
Отклик ведёт на сайт работодателя. Бесплатная регистрация открывает отклик и разбор резюме.