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

Яндекс · Санкт-Петербург, Москва · по договорённости

Компания
Яндекс
Город
Санкт-Петербург, Москва
Зарплата
по договорённости
Уровень
middle
Формат
гибрид

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

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

• 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
• Проектировали и разрабатывали сервисы с нуля

Открыть и откликнуться →

Отклик ведёт на сайт работодателя. Бесплатная регистрация открывает отклик и разбор резюме.