Портфолио

Как обработать 50 тысяч заказов и накормить всех

/

доставка еды

Около 60% объема инвестиций в мировой it еда приходится на онлайн-доставку еды из магазинов и ресторанов. Перед нами стояла задача доработать систему для комплексного управления и контроля складских запасов, онлайн- и офлайн-продаж, работы персонала и создания отчетов из единого приложения. Платформа интегрирована с CRM сервисом и позволяет видеть профиль клиента в момент покупки, таким образом показывая и обновляя информацию о его предпочтениях.

Для реализации сервиса был выбран Java из-за надежности и безопасности. Для создания удобного и отзывчивого интерфейса был использован React.




Решение

Распределение заказов

Чтобы обработать заказ быстро и правильно, необходимо учитывать множество факторов:

  • Время заказа: при выборе производства нужно учесть расписание работы производств, форс-мажорные закрытия, праздничные дни и выходные и т.д.
  • Адрес доставки: необходимо выбирать наиболее близкую к месту доставки кухню, чтобы минимизировать время доставки курьером.
  • Состав заказа:  выбрать именно то производство, которое в полном объеме удовлетворит заказ клиента.
  • Загруженность: иногда лучше перекинуть заказ на соседнюю кухню, если текущая уже загружена.

На основании вышеперечисленных факторов система выбирает производство с минимальным временем доставки!

Административная панель

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

Автоматизированная система в первые два месяца позволила увеличить скорость обработки заказов на 28%.




Приняв решение в пользу автоматизации бизнеса, компания получила возможность:

  • грамотно оценивать сроки доставки, распределять нагрузку на производства;
  • сократить время обработки заказа и, как следствие, контролировать бизнес;
  • заранее работать с отказами и предупреждать негатив со стороны клиентов.



Особенности проекта

  • Стек технологий — Java, Spring, Capture, JavaScript, React, WebSocket, PostgreSQL.
  • Интеграция с сервисами Yandex для получения информации о ситуации на дорогах.
  • Использование многоагентного подхода для оптимизации времени заказа.
  • Применение стека ELK для централизованного сбора данных различных производств.
  • Использование Java Capture для создания единой видео панели наблюдения за производствами.