Авторизация
Забыли пароль?
Сброс пароля
Вернуться к авторизации

Разработка сервиса "Экспресс-меню" Азбуки Вкуса

11 марта ‘24

Заказчик: Азбука Вкуса

"Экспресс Меню" — это сервис доставки готовых блюд от поваров Азбуки Вкуса. Проект на тысячи часов, с крутой командой и огромным потенциалом. Сайт, мобильные приложения, API, интеграции с Delivery Club и "Яндекс. Едой".

Агентство-исполнитель кейса

WPP.DIGITAL (ex- WEB++)

WPP.DIGITAL — российское цифровое агентство, которое создает полезные технологичные сервисы для foodtech и ecommerce. Основная специализация — веб- и мобильная разработка полного цикла. С 2020 года активно разрабатываем продукты на основе ml.

1. Вводная задача от заказчика, проблематика, цели

Быстрая доставка вкусного и полезного

Цель — запустить в Москве и Санкт-Петербурге сервис доставки готовой еды от Азбуки Вкуса. У Азбуки своя кухня высокого качества, блюда перед запуском сервиса продавались только офлайн. Требовалось создать новые процессы и интерфейс к запуску продаж в онлайне, а еще интегрировать эти процессы в основные бизнес-системы компании.

2. Описание реализации кейса и творческого пути по поиску оптимального решения

Берем на себя техническую часть

AIC спроектировали UX и дизайн, Trinity собрали мобильное приложение, коллеги из Азбуки Вкуса занялись анализом и проектированием процессов, а мы в wpp.digital взялись за всю техническую часть проекта: платформу, REST-API, сайт, интеграции, тестирование, мониторинг, тестирование отказоустойчивости etc.

Планирование на первом месте

Для управления проектом мы выбрали комбинированный подход - взяли одну часть из методологий PMI, другую – от Agile Scrum. Дальше сделали план из ~500 высокоуровневых задач, где отразили основные вехи, сроки.

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

Выбираем стратегию управления сложностью

"Экспресс Меню" — это многокомпонентный проект. Важно было выбрать правильную стратегию управления сложностью, чтобы не допустить ее экспоненциального роста. Если бы мы этого не сделали, то каждая из команд рано или поздно пыталась бы решить бизнес-задачу на своей стороне. Это привело бы к одному из 2-х исходов:

  • задачу никто не решил;
  • ее решили все одновременно и по-разному.

Мы выбрали подходы тонкого клиента на front-end-е и бизнес-логики на back-end-е. Это значит, что:

  • сайт и мобильные приложения только отображают данные, а не принимают бизнес-решения;
  • API — это транспорт для интеграций;
  • платформа — это логика и интеграции.

Проработанная SOS-система

Теперь посмотрим под капот. Внутри сервис спроектирован из разных узлов — веб-серверы, система поиска, базы данных, планировщики, кеши etc. И для каждого нужно:

  • резервирование — когда выходит из строя основной сервер, нужно прозрачно переключиться на резервный;
  • бекап и быстрое восстановление.

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

Подключили систему мониторинга, которая в реальном времени сообщала, когда что-то на проекте идет не так. Например, вызов API отвечает дольше, чем мы определили в SLA, или заказы отгружаются в систему учета более положенного времени.

Для удобства разделили мониторинг технических показателей серверов и мониторинг бизнес-активности проекта, чтобы ошибки сразу распределялись по релевантным отделам. Так статусы резервного копирования, метрики баз данных и веб-серверов оказались на плечах команды админов, а вся информация о бизнес-показателях — на команде поддержки проекта. Последние получали оповещения по E-mail и СМС-каналам.

Так каждое бизнес-событие стало логироваться. Каждую проблему пользователя мы могли детально изучить и после решить.

Василий Гребенников

директор, wpp.digital

Мы принимали и до сих пор принимаем как аксиому тот факт, что первые, а часто любые версии плана — гипотеза. Реальный ход развития всегда вносит корректировки, и это хорошо. Как раз это и отличает разработку софта от возведения мостов. План — опора в принятии решений. Из него понятно, как изменения будут влиять на сроки/стоимость/объем.

Антон Седов

технический директор, lead backend python developer, devOps, wpp.digital

Мы выбрали именно такую стратегию, потому что продукт неизбежно меняется в ходе разработки. Если логика будет "размазана" по компонентам — стоимость изменений продукта в будущем будет высокой. Такой же высокой станет вероятность ошибки.

3. Результаты сотрудничества

"Экспресс меню" для пользователя

Быстрые, полезные и вкусные блюда, заказать которые можно через разные каналы.

Для партнерский сервисов Delivery Club и "Яндекс.Еда" разработаны интеграционные API. Партнеры работают с реальными остатками и ценами.

Антон Седов

технический директор, lead backend python developer, devOps, wpp.digital

Когда строишь что-то масштабное — важен фундамент, а это команда и фокус, наличие системы планирования и правильные принципы, которые не сломаются в промежутке между стартом и финишем.

4. Заключение

"Экспресс Меню" — это сервис доставки готовых блюд от поваров Азбуки Вкуса. Проект на тысячи часов, с крутой командой и огромным потенциалом. Сайт, мобильные приложения, API, интеграции с Delivery Club и "Яндекс. Едой".

Агентство-исполнитель кейса

WPP.DIGITAL (ex- WEB++)

WPP.DIGITAL — российское цифровое агентство, которое создает полезные технологичные сервисы для foodtech и ecommerce. Основная специализация — веб- и мобильная разработка полного цикла. С 2020 года активно разрабатываем продукты на основе ml.