Обязанности:
Яндекс Лавка — сервис быстрой доставки продуктов. Наша команда отвечает за взаимодействие сервиса с курьерами. Здесь происходит управление сменами (от их выставления складами до выполнения курьерами), расчёт зарплат, коммуникации с курьерами и не только. Мы обрабатываем тысячи смен одновременно и умеем выдерживать тысячи RPS, интегрируемся в десятки смежных сервисов, покрываем более 90% кода тестами. Наш стек: Основной язык программирования — Python 3, используем asyncio, aiohttp, asyncpg, pytest Основные БД — шардированная PostgreSQL, MongoDB для сервера доставки событий на фронт, ClickHouse для аналитики YT (наш аналог MapReduce) для обработки больших данных Очередь сообщений SQS и Logbroker (наш аналог Kafka) для горизонтального масштабирования вычислений Протокол OpenAPI для взаимодействия с фронтом (React и Vue), мобильными приложениями и внешними сервисами Docker для локальной разработки и деплоя Какие задачи вас ждут: Автоматизировать нетривиальные бизнес-процессы для коммуникации с курьерами Разрабатывать инфраструктуру для сбора и отображения real-time-метрик, которые помогают нам быть эффективнее Разрабатывать идемпотентные и асинхронные API, интегрироваться во внешние сервисы Развивать общие программные компоненты, используемые в ключевых частях системы Осмысленно проводить код-ревью — для всего другого у нас есть Pylint Повышать надёжность и стабильность работы сервиса: мы целимся в uptime 99,9% Взаимодействовать с командами продукта, аналитиками и разработчиками других направлений Мы ждём, что вы: Уверенно знаете любой современный язык программирования Работали с БД (SQL, NoSQL), понимаете, зачем нужна денормализация данных Понимаете, как тесты делают жизнь разработчика (и всех вокруг) лучше Разрабатывали веб-приложения Понимаете, как устроены *nix-подобные операционные системы Способны работать и в команде, и самостоятельно Готовы быстро расти вместе с Лавкой Будет плюсом, если вы: Понимаете нюансы асинхронного программирования на Python: где его можно использовать, а где не стоит Работали с PostgreSQL Создавали высоконагруженные веб-приложения и распределённые системы обработки данных с тысячами RPS и миллионами записей Проектировали и разрабатывали сервисы с нуля