Разработчик бэкенда системы складских операций в Лавку (Python)
Зарплата | 250000 - 450000р. |
---|---|
Компания | Яндекс |
Город | Москва |
Требуемый опыт | От 3 лет |
Опубликована | 25 марта 2024 г. |
К сожалению, эта вакансия уже закрыта.
Но вы можете посмотреть другие вакансии
Яндекс Лавка - это международный сервис доставки продуктов за 10–20 минут, который стал неотъемлемой частью жизни миллионов людей. Наша команда разрабатывает платформу, которая используется на всех Лавках. Мы умеем отслеживать в реальном времени, сколько арбузов и на каких полках имеется в конкретной Лавке. Мы напрямую влияем на счастье наших пользователей, так как пытаемся исключить ситуации, когда привозят просроченный йогурт или почерневшие бананы.
Наш стек:
- Основной язык программирования — Python 3, asyncio, aiohttp, asyncpg, pytest
- Шардированый PostgreSQL — основная база данных, MongoDB — для сервера доставки событий на фронтенд, ClickHouse — для аналитики
- YT — наш аналог MapReduce для обработки больших данных
- Очередь сообщений SQS и Logbroker (наш аналог Kafka) — для горизонтального масштабирования вычислений
- Протокол OpenAPI — для взаимодействия с фронтом (React и Vue), мобильными приложениями и внешними сервисами
- Активно используем Docker для локальной разработки и деплоя
- Покрытие кода тестами более 90%
Какие задачи вас ждут:
Развивать продукт
Вам предстоит автоматизировать нетривиальные бизнес-процессы, связанные с жизненным циклом товаров на складах и последующей доставкой заказов клиентам, разрабатывать инфраструктуру для сбора и отображения real-time-метрик, которые помогают тысячам сотрудников работать эффективнее, разрабатывать идемпотентные и асинхронные API, интегрироваться с внешними сервисами, взаимодействовать с командами продукта, аналитиками и разработчиками из других направлений.
Вам предстоит автоматизировать нетривиальные бизнес-процессы, связанные с жизненным циклом товаров на складах и последующей доставкой заказов клиентам, разрабатывать инфраструктуру для сбора и отображения real-time-метрик, которые помогают тысячам сотрудников работать эффективнее, разрабатывать идемпотентные и асинхронные API, интегрироваться с внешними сервисами, взаимодействовать с командами продукта, аналитиками и разработчиками из других направлений.
Развивать общие программные компоненты
Мы разрабатываем свой фреймворк, используемый в ключевых частях системы, делаем удобные штуки для себя и коллег, чтобы двигаться быстро и ничего не ломать.
Мы разрабатываем свой фреймворк, используемый в ключевых частях системы, делаем удобные штуки для себя и коллег, чтобы двигаться быстро и ничего не ломать.
Поддерживать высокую культуру разработки и стабильность сервиса
Вы будете проводить осмысленно код-ревью (для всего другого у нас есть ruff и black), держать codecoverage близким к 90%, улучшать мониторинги и алерты для сохранения uptime 99.9%.
Вы будете проводить осмысленно код-ревью (для всего другого у нас есть ruff и black), держать codecoverage близким к 90%, улучшать мониторинги и алерты для сохранения uptime 99.9%.
Мы ждём, что вы:
- Уверенно знаете любой из современных языков программирования (мы используем Python)
- Имеете опыт работы с базами данных (SQL, NоSQL), понимаете, зачем нужна денормализация данных
- Понимаете, как тесты делают жизнь разработчика и всех вокруг лучше
- Имеете опыт разработки веб-приложений
- Понимаете, как устроены *nix-подобные операционные системы
- Чувствуете себя комфортно, работая как в команде, так и самостоятельно
- Готовы расти быстро вместе с Лавкой
Будет плюсом, если вы:
- Понимаете нюансы асинхронного программирования на Python: где его можно использовать, а где не стоит
- Работали с PostgreSQL
- Имеете опыт разработки высоконагруженных веб-приложений и распределённых систем обработки данных (тысячи RPS, миллионы записей)
- Проектировали и разрабатывали сервисы с нуля