С любовью
к технологиям
и людям

Яндекс Лавка — сервис быстрой доставки продуктов, готовой еды и бытовых товаров

Мы создали Лавку с нуля в 2019 году с использованием новых технологий Яндекса.

И сейчас это не просто сервис, который любят, — это эффективный бизнес в сегменте экспресс-доставки

13

городов

> 570

дарксторов по всей России

от 15 мин.

всё, что нужно
01
Команды
Команда B2B
Разрабатываем универсальную технологическую платформу доставки продуктов и изобретаем решения в новой для нас области
Создаём на C++ сервисы, доступные нашим B2B-партнёрам: отвечаем за каталог, скидки, промокоды, логистику, уведомления, жизненный цикл заказа, оплату, интеграционный слой и многое другое
Команда клиентского продукта
Мы делаем каталог и поиск, цикл заказа и платформу
А ещё мы управляем всем, что происходит с пользователем после того, как он собрал корзину; формируем из наших сервисов white-label-решения для внешних партнёров; занимаемся рекламой и промо и создаём новые сценарии на стыке с другими сервисами Яндекса — например, доставку заказа по клику из Маркета и Лавки
Команда бэк-офиса
Развиваем сервисы, которые работают за фасадом приложения
Это система управления складом и специальная платформа для автоматизации процессов работы с заказами
Команда логистики
Отвечаем за то, чтобы доставка продуктов в Лавке была качественной и прозрачной для клиентов, а наши партнёры были счастливы
Развиваем курьерское приложение и помогаем выстраивать логистику
Команда ML в Лавке
Внедряем ML-технологии, чтобы сделать Лавку эффективнее и привлекательнее для клиентов
Мы сами обучаем свои модели, которые катим в продакшен. Вы сможете заниматься и ресёрчем, и внедрением
02
Технологии
Мы знаем, что каждая строчка нашего кода прорастает в реальную жизнь. Поставщики и партнёры, кладовщики и курьеры, наши пользователи, склады и распределительные центры, заводы и маршруты — наши решения влияют на всё это

Пополнение

Прогнозирование спроса

Строим комплексную систему, которая помогает аналитикам и бизнесу собирать данные об изменениях поведения потребления, погоде, влиянии сезонности, акциях и праздниках. На основе этого обучаем ML-модель прогнозировать спрос и планировать пополнение складов под оптимальные целевые значения. Далее передаём данные команде продукта

Автоматизация заказов

Используем автозаказ для того, чтобы автоматически определять, какой товар и в каком количестве заказывать, формировать расчёты и отправлять заявки поставщикам. Система реализована на базе 1С. Учитываем, сколько товаров есть на складе и сколько товаров уже едет в магазин. Поддерживаем оптимальный уровень запасов и обеспечиваем покупателей свежими продуктами

Склад

Система управления

Создаём собственную WMS (Warehouse Management System), специально адаптированную под сотни небольших дарксторов, где в режиме 24/7 без выходных, ежедневно обрабатываются сотни тысяч клиентских заказов. Основной упор сделан на сверхбыструю сборку. Система также покрывает все ключевые складские операции: от приёмки и контроля качества до инвентаризации. Используем Python, который позволяет быстро разрабатывать бизнес-логику, а также шардированный PostgreSQL, MongoDB и очередь Amazon SQS, чтобы эффективно распределять нагрузку в режиме реального времени. На фронтенде применяем Vue и React, создавая удобные интерфейсы для сотрудников и партнёров
Бизнес-метрики
Обрабатываем в режиме реального времени с помощью системы «Здоровье Лавки» десятки миллионов событий, поступающих из дарксторов. Агрегируем их в ClickHouse для дальнейшего анализа. Данные визуализируются в специальном UI, что даёт пользователям доступ к ключевым метрикам в реальном времени. В то же время система алертов отслеживает показатели и, если они отклоняются от заданных порогов, автоматически отправляет пуш-уведомления супервайзерам. Это позволяет оперативно реагировать и поддерживать высокую эффективность работы дарксторов

Распределение задач

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

Каталог

Проверка цен и остатков

Синхронизируем со складской системой WMS данные, включая цены и наличие, по более чем 1000 складам и более чем 150 000 товаров. Остатки обновляем каждые несколько секунд, поэтому пользователю показываем только товары, доступные на складе, по актуальным ценам. Таким образом мы минимизируем риск того, что добавленного в корзину товара не окажется на складе при сборке заказа или его цена изменится после совершения оплаты

Карточки товаров

Непрерывно получаем и обновляем множество атрибутов товаров, например: названия, описания, КБЖУ и аллергены. Это позволяет предоставить пользователю максимально полную информацию о товаре и его составе. Всего существует более 800 возможных атрибутов, и мы можем гибко и декларативно поддерживать появление новых. Реализовали собственную подсистему локализации для перевода номенклатуры, так как Лавка как сервис представлена в разных странах

Поверхности

Синхронизируем структуру каталога по разным страницам с контентной системой (PIM), например на главной странице приложения или в определённой категории. Сейчас мы поддерживаем более 200 различных вариантов каталога для разных городов и разных типов складов. Строим кастомные категории: «Избранное», «Недавние покупки», «Скидки», «Новинки». В основе лежит архитектурный подход Category as a Service, который позволяет изолированно добавлять новую категорию и встраивать её в приложение, не затрагивая базовую логику. Также умеем заводить новые поверхности для рекомендаций за считанные часы за счёт гибкого механизма пайплайнов, который даёт возможность переиспользовать уже написанный код построения каталога

Отказоустойчивость

Умеем защищаться от различного рода проблем в смежных системах, которые поставляют нам данные. Под капотом — механизм снапшотов данных, на разные версии которых мы можем откатиться, если что‑то пойдёт не по плану. Благодаря микросервисной архитектуре и геораспределённости можем достаточно быстро горизонтально масштабироваться и переживать различные инциденты, связанные с потерей сетевой связности

Поиск

Поиск товаров

Помогаем пользователям с помощью персонализированного поискового движка по запросу находить релевантные товары. Под капотом различные ML-модели — нейросети и трансформеры

Рекомендации

Реализуем несколько рекомендательных систем, каждая из которых оптимизирована под конкретную задачу: напоминание о забытых товарах, предложение новинок и другие. Непрерывно совершенствуем алгоритмы, экспериментируя с правильными таргетами и продуктовыми решениями. В основе рекомендательных систем лежат как классические методы, такие как градиентный бустинг, так и передовые разработки — трансформерные модели и эксперименты с нейросетевым ранкером

Корзина и оплата

Скидки

Создаём подборки с персональными скидками. Реализуем различные скидочные механики: скидку на корзину, специальные цены на комбо-наборы, а также скидки, действующие в определённое время суток, с динамически изменяющимся ассортиментом товаров. Умеем оперативно получать признаки пользователя в режиме реального времени и обеспечиваем высокую точность расчёта персональных предложений. Также мы умеем считать бюджет, что защищает нас от некорректно заведённых скидок

Независимые корзины

Ввели возможность ведения двух независимых корзин: для товаров из Лавки и супермаркетов, а также для аптек и зоотоваров. Приложение автоматически определяет, в какую корзину добавить выбранный товар. Информация о типе корзины хранится на сервере

Дозаказ

Даём возможность менять заказ до момента завершения сборки. Создаём новую версию заказа, резервируем товары на складе, пересчитываем итоговую сумму. Интегрируем изменения с доставкой и подбираем курьера в зависимости от итогового веса товаров

Цикл заказа

Реализуем цикл заказа на платформе ProcaaS. Обеспечиваем последовательное и упорядоченное выполнение всех операций. Гарантируем корректную обработку изменений, таких как отмена заказа. Предотвращаем ошибочные действия, например списание средств после отмены

Доставка
и логистика

Назначение курьеров

Продолжаем улучшать процесс подбора заказов для курьеров — диспатч. Много работаем и экспериментируем над тем, как правильно назначать курьеров на заказы: какой курьер, что, когда и в каком порядке должен везти. Следим, чтобы это было эффективно для Лавки, а кофе к пользователям всегда приезжал горячим

Управление спросом и предложением

Решаем задачу управления спросом и предложением. Активно развиваем алгоритмы для стабилизации количества заказов. При пиковых нагрузках автоматически включается механизм суржа, повышающий стоимость корзины и доставки. Это делается для того, чтобы сервис не перегружался, а время доставки не увеличивалось. При этом если есть свободные курьеры, пользователям предлагаются более выгодные условия заказа

Предсказание времени доставки

Улучшаем алгоритм предсказания времени доставки — промис. Заботимся о том, чтобы пользователи могли планировать свои дела, ориентируясь на обещанное время прибытия заказа. Используем ML-модель, которая учитывает множество факторов: загрузку даркстора, количество свободных курьеров, продолжительность маршрута и время сборки

Приложение для исполнителей

Стремимся сделать работу курьеров и кладовщиков удобной и интересной. Совершенствуем мобильное приложение «Яндекс Про»: оптимизируем расход батареи и повышаем скорость работы. Улучшаем функциональность на всех этапах цикла заказа: от принятия до вручения его пользователю. Активно работаем над системой мотивации. Добавили в приложение магазин, бонусы, мечты курьеров и рейтинг, который создаёт геймификацию и повышает интерес к работе
03

Наши языки и фреймворки

  • Backend

  • Frontend

  • Data

  • iOS

  • Android

04

Как мы работаем в Лавке

Всегда делать всё по-лавочному нам помогают наши ценности

  1. Смелость
    Не боимся экспериментов, мыслим вне рамок, придумываем и перепридумываем
  2. Открытость
    Ведём открытый диалог, умеем слушать и слышать других
  3. Уникальность
    Понимаем, что каждый из нас — уникальная строчка нашего общего кода
  4. Самостоятельность
    Проявляем инициативу, работаем самостоятельно и готовы брать на себя ответственность
  5. Сплочённость
    Верим, что по-настоящему большое и прекрасное можно сделать только вместе
  6. Любовь
    Любим, что делаем, и наполняем этой любовью других
05

Наша культура

Чтобы радовать и заряжать жизнелюбием других, нужно и самим любить эту жизнь. И мы это точно умеем!

06

Почитать и посмотреть про Лавку

07

Лавка в новостях

08

Вакансии

Fri Mar 28 2025 20:07:51 GMT+0300 (Moscow Standard Time)