Cейчас этот раздел находится в разработке.
Он обязательно появится позже
скоро...
3D в брендинге:
кому и зачем это нужно
Разработка сервиса
«Экспресс-меню» Азбуки Вкуса
проект закрыт
«Экспресс Меню» — это сервис доставки готовых блюд от поваров Азбуки Вкуса. Проект на тысячи часов с крутой командой и огромным потенциалом. Сайт, мобильные приложения, API, интеграции с Delivery Club и «Яндекс. Едой».
< год >
2018
< время прочтения >
15 мин.
Стек
Клиент
Азбука Вкуса
Услуги
Backend-разработка, Frontend-разработка, Тестирование
Bitrix, Laravel, nginx, Elasticsearch + Logstash + Kibana, Vue.js
< цель >
Быстрая доставка вкусного и полезного
Цель — запустить в Москве и Санкт-Петербурге сервис доставки готовой еды от Азбуки Вкуса. У Азбуки своя кухня высокого качества, блюда перед запуском сервиса продавались только офлайн. Требовалось создать новые процессы и интерфейс к запуску продаж в онлайне, а еще интегрировать эти процессы в основные бизнес-системы компании.
< старт работ >
Берем на себя техническую часть
AIC спроектировали UX и дизайн, Trinity собрали мобильное приложение, коллеги из Азбуки Вкуса занялись анализом и проектированием процессов, а мы в wpp.digital взялись за всю техническую часть проекта – платформа, REST-API, сайт, интеграции, тестирование, мониторинг, тестирование отказоустойчивости etc.
< решение задачи >
Планирование на первом месте
Для управления проектом мы выбрали комбинированный подход – взяли одну часть из методологий PMI, другую – от Agile Scrum. Дальше сделали план из ~500 высокоуровневых задач, где отразили основные вехи, сроки.
Мы принимали и до сих пор принимаем как аксиому тот факт, что первые, а часто любые версии плана — гипотеза. Реальный ход развития всегда вносит корректировки, и это хорошо. Как раз это и отличает разработку софта от возведения мостов. План — опора в принятии решений. Из него понятно, как изменения будут влиять на сроки/стоимость/объем.
Василий Гребенников
директор в wpp.digital
Двигались спринтами. По итогам каждого спринта организовывали большую ретроспективу со всеми участниками команды. Смотрели, что хорошо, что плохо, принимали решения и планировали следующий спринт.
< архитектура >
Выбираем стратегию управления сложностью
«Экспресс Меню» — это многокомпонентный проект. Важно было выбрать правильную стратегию управления сложностью, чтобы не допустить ее экспоненциального роста. Если бы мы этого не сделали, то каждая из команд рано или поздно пыталась бы решить бизнес-задачу на своей стороне. Это привело бы к одному из 2-х исходов:

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

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

  • сайт и мобильные приложения только отображают данные, а не принимают бизнес-решения;
  • API — это транспорт для интеграций;
  • платформа — это логика и интеграции.
Мы выбрали именно такую стратегию, потому что продукт неизбежно меняется в ходе разработки. Если логика будет «размазана» по компонентам — стоимость изменений продукта в будущем будет высокой. Такой же высокой станет вероятность ошибки.
Антон Седов
технический директор, lead backend python developer, devOps в wpp.digital
< мониторинг >
Проработанная SOS-система
Теперь посмотрим под капот. Внутри сервис спроектирован из разных узлов — веб-серверы, система поиска, базы данных, планировщики, кеши etc. И для каждого нужно:

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

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

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

Так каждое бизнес-событие стало логироваться. Каждую проблему пользователя мы могли детально изучить и после решить.
< решение в жизни >
«Экспресс Меню» для пользователя
Быстрые, полезные и вкусные блюда, заказать которые можно через разные каналы.

Мобильное приложение
Веб-приложение express.av.ru
Партнерские сервисы DeliveryClub и «Яндекс.Еда»

Для партнерских сервисов Delivery Club и «Яндекс.Еда» разработаны интеграционные API. Партнеры работают с реальными остатками и ценами.
Когда строишь что-то масштабное — важен фундамент, а это команда и фокус, наличие системы планирования и правильные принципы, которые не сломаются в промежутке между стартом и финишем.
Антон Седов
технический директор, lead backend python developer, devOps в wpp.digital
< команда >
над проектом работали
Антон Седов
Василий Гребенников
< еще материалы >
рекомендуем посмотреть
Создали навык голосового помощника Алиса для заказа еды в сервисе «Экспресс Меню» Азбуки Вкуса.
Проектирование
Backend-разработка
+3 услуги
Запустили новую программу лояльности «Вкусомания». Добавили новые механики: например, участники теперь могут накапливать бонусы за покупки и тратить их на товары и услуги внутри ритейла.
Веб-сервис
Тестирование
+3 услуги