logo
info@vverh.digitalПо всем вопросам и предложениям
logo
+7 343 302-27-24
Кейс / мобильное приложение

Переписали приложение доставки BBQ и ускорили ключевые сценарии до нативной скорости

Клиент пришёл с приложением на Cordova: меню открывалось по 10–15 секунд, первый запуск — более 10. За 2 месяца перевели продукт на нативную основу, сократили загрузку меню до 0,5 секунды и подняли средний рейтинг в сторах с 3,5 до 4,5.

BBQ App — мокапы смартфонов
Срок
2 месяца
Платформы
iOS / Android
Загрузка меню
15 сек → 0,5 сек
Рейтинг в сторах
3,5 → 4,5
О проекте

Сеть шашлычных BBQ с высокой нагрузкой на ключевых сценариях

BBQ — сервис доставки еды в Сочи и пригороде. До переработки продукт работал на Cordova. Приложение обслуживает весь город: от центра до Красной Поляны, поэтому скорость и стабильность напрямую влияют на заказы и выручку.

КлиентСеть шашлычных BBQ
ПродуктМобильное приложение доставки
ГеографияСочи, Адлер, Красная Поляна
Объём работРедизайн, нативная переработка, бекенд-прослойка для кэширования
5000+
заказов / мес через приложение
≈9 млн ₽
оборот / мес

При таком масштабе каждая секунда загрузки — это потерянные заказы.

BBQ App — корзина и главный экран
Результат

Сократили время открытия меню с 15 секунд до 0,5 секунды

Оформление заказа
-60%

Время от открытия приложения до оплаты сократилось с ~4 минут до ~1,5 минуты.

Загрузка меню
15 сек → 0,5 сек
Первый запуск
10+ сек → 2 сек
Экран товара
5–6 сек → менее 1 сек
Рейтинг в сторах
3,5 → 4,5
Мокапы приложения BBQ
Техническая задача

Нужно было не просто обновить интерфейс, а заменить архитектуру, которая не давала расти

Задача не ограничивалась интерфейсом. Основные проблемы лежали в интеграциях, API и устаревшем клиентском программном обеспечении.

Bitrix API

  • Плохая документация
  • Частые падения сервиса
  • Медленные ответы API

Интеграции

  • Создание заказа занимало более 10 секунд в iiko
  • Поиск заказа занимал 2-3 секунды из-за связи с 1С

Legacy-архитектура

  • Все запросы проходят через Битрикс
  • Telegram-боты курьеров нагружали основную систему
  • Старая и медленная версия PHP
Решение

Мы добавили собственную API-прослойку для кэширования, валидации и нормализации данных, а клиент переписали на нативных технологиях Swift и Kotlin.

ответы меню до 0,5 сек
клиент не зависит от Bitrix напрямую
нативная скорость на обеих платформах
единый формат данных для iOS и Android
Старый подход
Bitrix + Cordova
Наша прослойка
Кеширование и валидация
Новый внешний вид
Swift + Kotlin
Что получилось
01 — Дизайн

Пересобрали интерфейс и ключевые пользовательские сценарии

Интерфейс собрали заново вокруг основных действий пользователя: поиск товара, просмотр товара, работа с корзиной и оформление заказа. Приложение стало чище, понятнее и дает «нативные» ощущения от использования.

  • светлая и тёмная темы
  • упрощённая навигация по меню и категориям
  • переработанные сценарии работы с экранами товара, корзины и оформления заказа
iOS — SwiftUI / Android — Jetpack Compose
BBQ App — все экраны приложения
Мобильное приложение
Кеширование и валидация
Bun · Redis · PostgreSQL
TTL-кэш для каталога и категорий
валидация и фильтрация ответов Bitrix
единый формат данных
Bitrix API
02 — API

API-прослойка убрала зависимость клиента от медленного бэкенда

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

03 — Поддержка

Добавили мониторинг, чтобы быстрее замечать и разбирать сбои

После запуска важно было не только ускорить приложение, но и сделать его доступным в плане обслуживания. Для этого сделали два инструмента: быстрые уведомления об ошибках в Telegram и панель логов для диагностики.

Telegram-бот

Бот сообщает о проблемах в рабочий чат: ошибках валидации, нестабильных ответах API и замедлении критичных сценариев.

ошибки валидации
замедление ответов API
сбои
Telegram-бот мониторинга BBQ

Панель логов

Панель помогает отфильтровать события по коду ответа и методу HTTP-запроса, быстро найти причину сбоя и разобрать конкретный пользовательский сценарий.

фильтрация по коду ответа и методу HTTP-запроса
поиск конкретного события
разбор конкретного сценария
Панель логов BBQ — таблица запросовПанель логов BBQ — детали запроса

Команда стала быстрее замечать сбои, понимать причину и возвращать сервис в рабочее состояние.

Технологии

Стек, который позволил уложиться в 2 месяца

Общую логику вынесли в KMP, интерфейс собрали нативно для iOS и Android, серверную часть — на Bun + TypeScript с PostgreSQL, Redis и Docker.

Приложение
KotlinKotlin
SwiftSwift
KMPKMP
Интерфейс
Jetpack ComposeJetpack Compose
SwiftUISwiftUI
Сервер
BunBun
TypeScriptTypeScript
PostgreSQLPostgreSQL
RedisRedis
DockerDocker
Разработка приложений
Получите персональную стоимость на разработку мобильного приложения сегодня