← Все вакансии

Python-разработчик в складские операции Лавки

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

Мы используем:

  • 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
  • Проектировали и разрабатывали сервисы с нуля
Python Go SQL React Vue PostgreSQL MongoDB ClickHouse Docker Pytest
Откликнуться →