Similar presentations:
Groceries_kickoff_разработки
1.
GROCERIES·
KICKOFF РАЗРАБОТКИ
Платформа быстрой доставки
продуктов: что строим и с чего
начинаем
Приложение клиента
Приложение склада
Приложение курьера
Районные склады, штатные сборщики и свои курьеры — на одной
платформе с честными остатками
Админ-панель
один бэкенд · одна база остатков
Душанбе · 2026
2.
Проект за одну минутуДаркстор-модель: продукты у двери за полчаса
Клиент заказывает в приложении, ближайший районный склад собирает заказ за 3–5 минут, свой курьер доставляет. Мы продаём
скорость и витрину, которой можно верить: если товар виден в приложении — он лежит на полке.
15–30 мин
1 склад
2 роли
4 продукта
от заказа до двери —
главное обещание клиенту
пилот: склад 100–150 м² и
до 1 500 товаров в одном
районе Душанбе
штатные сборщики на
складе и свои курьеры на
доставке
приложения клиента,
склада и курьера плюс вебадминка
Платформа обязана обеспечить и скорость, и честные остатки — остальное вторично.
2
3.
Путь заказа и кто за что отвечаетКаждый шаг — отдельный продукт платформы
Заказ
Резерв
Сборка
Полка выдачи
Доставка
Вручение
Каталог с живыми
остатками, оплата
картой, кошельком
или наличными
Товар
резервируется в
момент
оформления —
атомарно, без
двойной продажи
Список с адресами
ячеек, маршрут
обхода, скан
каждой единицы
Пакеты со
стикерами, заказ
привязан к ячейке
полки сканом
Курьер сканирует
все пакеты, клиент
видит его на карте
Подтверждение,
приём наличных
или списание холда
по факту сборки
Клиент
Бэкенд
Склад
Склад
Курьер
Курьер, платежи
Курьер назначается в момент начала сборки — клиент ждёт только дорогу.
3
4.
Что разрабатываем: 4 продукта на одном бэкендеРекомендация — модульный монолит; окончательный стек предлагает команда
Приложение клиента
Приложение склада
Приложение курьера
Админ-панель
iOS, Android
Android: ТСД или смартфон
iOS, Android
веб
Бэкенд — модульный монолит, REST + WebSocket, события через очередь
Каталог и цены
Заказы
Склад и остатки
Доставка
Платежи
Клиенты и промо
Сотрудники и роли
Аналитика
PostgreSQL
Redis
Очередь событий
Внешние сервисы
журнал движений, остатки, заказы
кэш витрины, фоновые задания
стоп-лист, уведомления
платежи, SMS, карты, push, чеки
Ядро — модуль склада и остатков: на его события подписаны витрина, доставка и аналитика.
4
5.
Шесть правил, которые не обсуждаютсяТехнические требования, от которых зависит, будет ли бизнес работать
Журнал движений — источник
правды
Остаток меняется только записью в журнале:
кто, когда, сколько, почему. Записи не
редактируются — исправление встречным
движением.
Офлайн 15 минут
Приложения склада и курьера работают без
сети и синхронизируются без потерь: у каждого
действия идемпотентный ключ.
Резерв в момент заказа
Стоп-лист за 5 секунд
Атомарный резерв с блокировкой строки
остатка: последнюю единицу не смогут купить
два клиента.
Доступно = остаток − резервы − буфер. На нуле
позиция исчезает с витрины не позже чем через
5 секунд.
Мультисклад с первого дня
Даже при одном складе всё привязано к складу:
ячейки, остатки, сотрудники, курьеры, зоны
доставки.
Деньги и время
Суммы — целым числом в дирамах, без чисел с
плавающей точкой. Время хранится в UTC,
показывается в Asia/Dushanbe.
Нарушение любого из правил — это неправильная витрина или потерянные деньги.
5
6.
Приложение склада — главный продуктОдин инструмент для двух ролей: сборщика и кладовщика
Сборщик
Кладовщик
• очередь заказов по обещанному времени доставки
• приёмка против заказа поставщику, сроки, отбраковка
• позиции с адресом ячейки, отсортированы по маршруту обхода
• размещение и подпитка по заданиям системы, FEFO
• сухое → холод → заморозка, хрупкое отдельно
• фасовка весового товара в SKU 0,5 / 1 / 1,5 кг
• скан каждой единицы, чужой штрихкод — отказ
• циклический слепой пересчёт ячеек
• «товара нет на месте» — одна кнопка, остальное делает система
• списания только со сканом и причиной
• печать стикеров на пакеты, скан полки выдачи
• печать этикеток ячеек и внутренних штрихкодов
Оборудование: Android-ТСД класса Urovo DT40 или смартфон — решаем на этапе 0. Приложение поддерживает и камеру, и аппаратный
сканер (режим клавиатуры или SDK производителя), плюс Bluetooth-принтер этикеток.
Если ошибается склад, никакой интерфейс клиента это не исправит.
6
7.
Приложения клиента и курьераСостав MVP
Клиент
Курьер
• вход по SMS, таджикский и русский языки
• смены и статусы, геопозиция только во время смены
• адрес пином на карте + подъезд, этаж, ориентир
• автоназначение в момент начала сборки
• склад определяется по полигону зоны доставки
• тяжёлые и дальние заказы — только авто-курьерам
• карточка с вариантами веса — каждый вариант отдельный SKU
• забор заказа: скан всех пакетов
• правило замен выбирается при оформлении
• вручение, приём наличных, сдача, отказ от позиции
• онлайн-оплата: холд → списание по факту сборки
• касса смены и сдача наличных старшему
• статус заказа, курьер на карте, претензия с фото
• диспетчер видит курьеров на карте и может переназначить
Клиент никому не звонит: замены, отмена и претензия решаются в приложении.
7
8.
Админ-панель и метрикиРабочее место офиса и старших смен
МЕТРИКИ ПАНЕЛИ УПРАВЛЯЮЩЕГО
Функции
• каталог, SKU, цены и акции по периодам
Время сборки
Время доставки
Доля вовремя
Точность сборки
«Нет на месте»
Точность остатков
Списания
Загрузка курьеров
Средний чек
• склады и полигоны зон доставки на карте
• онлайн-монитор заказов и курьеров на карте
• карточка заказа для поддержки, возвраты до лимита роли
• роли с привязкой к складу, 2FA, журнал аудита
• экспорт любого отчёта в Excel
Метрики считаются с первого дня — по ним мы будем управлять пилотом.
8
9.
Границы MVPЧто делаем сейчас и что сознательно откладываем
Входит в MVP
Сознательно позже
• 4 продукта: клиент, склад, курьер, админ-панель
• этап 2: промокоды, рефералы, уценка по срокам
• сквозной заказ с онлайн- и наличной оплатой
• этап 2: объединение заказов, автозаказ поставщикам
• склад: приёмка, размещение, подпитка, сборка, списание
• этап 2: полная инвентаризация с блокировкой продаж
• фасовка и печать этикеток
• этап 3: перемещения между складами, ABC-раскладка
• циклическая инвентаризация и стоп-листы
• этап 3: подменные номера, электронные весы
• автоназначение курьеров и касса смены
• вне рамок: сайт, маркетплейс продавцов, ML-прогноз
• метрики управляющего и журнал аудита
Всё, без чего пилот не примет первый заказ, — в MVP. Всё, что ускоряет рост, — потом.
9
10.
Этапы и проверки между нимиСледующий этап начинается только после проверки предыдущего
Этап 0
Этап 1
Этап 2
Этап 3
Проектирование
MVP
Пилот
Сеть складов
UX-прототипы, архитектура,
модель данных, оценка
сроков
все требования с пометкой
MVP, тестовый склад,
реальные устройства
живые заказы в одном
районе; промо, рефералы,
уценка, автозаказ
новые районы, перемещения,
ABC-раскладка, телефония и
весы
Проверка 1
Проверка 2
Проверка 3
блокирующие вопросы
закрыты, прототипы
утверждены
все критерии приёмки
пройдены на тестовом складе
метрики пилота стабильны,
экономика склада
подтверждена
Сроки этапов 1–3 команда оценивает по итогам этапа 0, а не сегодня.
10
11.
Как поймём, что MVP готовКлючевые сценарии приёмки на тестовом складе с реальными устройствами
сквозной заказ проходит без ручных правок в базе данных
остаток = сумма движений журнала; изменить его в обход
журнала нельзя
последнюю единицу не могут купить два клиента
одновременно
позиция уходит с витрины не позже чем через 5 секунд
чужой штрихкод при сборке отклоняется с сигналом
«нет на месте»: корректировка, стоп, замена и пересчёт —
одним действием
15 минут без сети — без потерь и дублей действий
касса курьера сходится с наличными заказами смены
Полный список — 17 сценариев в разделе 13 ТЗ.
11
12.
Что дальшеДоговорённости по итогам созвона
ОТ КОМАНДЫ РАЗРАБОТКИ
ОТ НАС — БЛОКИРУЮЩИЕ ВОПРОСЫ
1.
вопросы по ТЗ — комментариями в документе
1.
обещание по времени доставки
2.
оценка этапа 0 и предварительная вилка по этапу 1
2.
требования к фискализации чеков
3.
предложение по стеку и составу команды
3.
где хранить персональные данные
4.
риски и что стоит упростить в MVP
4.
банк-эквайер и электронные кошельки
5.
провайдер карт для адресов Душанбе
ТЗ «Платформа Groceries» — 14 разделов: роли, модель данных, требования с ID и этапами, интеграции, нефункциональные
требования, критерии приёмки. Отправляем после созвона.