Автор кейсаItFoxЛоготип компании

Один код — три приложения: как мы сэкономили 70% бюджета на поддержку

Заказчик
B2B-платформа корпоративных скидок для сотрудников крупных компаний (проект под NDA). Более 10 партнёров — банки, ритейлеры, IT-корпорации. Совокупная аудитория сотрудников — 500 000+ человек.
Задача
Разработать кроссплатформенное мобильное приложение для iOS и Android с закрытой авторизацией по инвайт-кодам. В процессе выяснилось, что нужно три брендированные версии для разных групп партнёров.

Как мы сэкономили заказчику 70% бюджета на поддержку мобильного приложения

Заказчик — B2B-платформа, которая предоставляет сотрудникам крупных корпораций доступ к эксклюзивным скидкам: массаж со скидкой 70%, аренда яхт, спецпредложения в ресторанах и спа-салонах. Модель простая: компания-работодатель покупает доступ к платформе и выдаёт его сотрудникам как нематериальный бонус. Каждый сотрудник получает индивидуальный инвайт-код, регистрируется в приложении и видит эксклюзивные предложения.

На старте у клиента уже были работающий сайт и бэкенд на REST API, более десяти крупных партнёров — банков, ритейлеров и IT-корпораций. Совокупная численность сотрудников этих компаний превышала 500 000 человек. Полноценного мобильного приложения не было, и это ограничивало использование бонуса: сотрудники не могли быстро активировать скидки со смартфона, а значит, ценность предложения снижалась.

Когда «сделайте приложение» оказывается сложнее, чем кажется

Задача звучала как «разработайте мобильное приложение», но в процессе мы столкнулись с тремя скрытыми проблемами.

Первая. Бэкенд задерживался. Он должен был быть готов к началу разработки, но фактически его доделывали параллельно. Фронт-команда могла простаивать неделями — а это прямой сдвиг сроков и дополнительные затраты.

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

Третья. В приложении требовался встроенный чат поддержки. Внешний сервис LifeText не имел SDK для Flutter. Без обратной связи пользователи не могли оперативно решать проблемы, что вело к снижению конверсии.

Решение АЙТИФОКС

Мы спроектировали систему, которая решает все три проблемы одновременно, и заложили архитектуру, готовую к изменениям.

Flutter как основа. Мы выбрали Flutter — он позволяет вести единую кодовую базу для iOS и Android. Любая доработка пишется один раз и работает на обеих платформах. Если бы мы выбрали нативные языки, пришлось бы разрабатывать два отдельных приложения — на Swift и Kotlin — с двойными затратами.

Flavors — один код для трёх приложений. Мы сделали так, что из одного кода собирается три разных приложения. При сборке просто меняются настройки: название, иконка, цветовая схема и адрес сервера. Весь процесс автоматизирован. В результате любая доработка вносится один раз, а получают её все три версии.

Мок-данные — работа без бэкенда. Пока бэкенд задерживался, мы подготовили свои тестовые данные — такие же, какие позже должен был отдавать сервер. С ними можно сразу начать разрабатывать интерфейс и логику приложения, не дожидаясь готового бэкенда. Когда бэкенд доделали, мы просто заменили тестовые данные на реальные запросы — это заняло один день.

Чат через WebSocket. Для чата мы использовали внешний сервис LifeText. Обычно такие сервисы дают готовые инструменты для разработчиков — но для Flutter у LifeText такого не было. Поэтому мы подключились к сервису напрямую: настроили канал для обмена сообщениями в реальном времени, передали данные пользователя и настроили приём уведомлений. Всё сделали сами, без готового SDK. В результате чат заработал мгновенно — пользователи получают ответы поддержки без задержек, прямо в приложении.

Это не первая наша задача, где приходится работать без готовых инструментов. В похожем проекте мы восстанавливали BLE-протокол фитнес-браслетов по байтам — там SDK тоже был бесполезен, и мы разобрались с устройством напрямую.

Производительность. Приложение выросло до 50+ экранов — это серьёзный объём для мобильного проекта. Мы настроили приоритеты загрузки, чтобы список купонов не тормозил даже при быстром скролле, а картинки подгружались без задержек, пока пользователь листает.

Процесс работы

Главный вызов этого проекта случился не на старте. Мы уже вовсю разрабатывали приложение, когда заказчик сообщил: «Нам нужно не одно приложение, а три — с разными брендами, дизайном и серверами».

Мы оперативно оценили новые требования, предложили заказчику решение и согласовали изменения. Вместо того чтобы переписывать всё с нуля, мы за несколько дней перестроили систему сборки. Умение быстро перестраиваться под новые условия — наш стандартный подход. Например, в проекте по разработке финтех-приложения для Нигерии мы за 3 месяца полностью переписали бизнес-модуль с нуля и запустили MVP, хотя изначально сроки казались нереальными.

Мы настроили Flavors — это позволяет из одного кода собирать несколько приложений с разными названиями, иконками и настройками, а также автоматизировали сборку и публикацию в магазины. В итоге дополнительные затраты оказались минимальными, график почти не сдвинулся, и заказчик получил три готовых версии приложения.

Результат и бизнес-эффект

Три брендированных приложения одновременно вышли в Google Play и App Store. По оценке заказчика, их аудитория превысила 100 000 активных пользователей.

Для бизнеса:

  • Любая новая фича пишется один раз и становится доступна всем трём версиям — экономия на поддержке достигает 70%.

  • Добавление четвёртой или пятой версии не требует изменения кода — только настройки параметров сборки.

  • Краш-рейтинг менее 1%, жалоб на производительность не поступало.

  • Проект занял около шести месяцев, заказчик принял работу без нареканий.

Для пользователей:

  • Мгновенный доступ к скидкам в два клика.

  • Чат-поддержка в реальном времени.

  • Плавная работа без зависаний.

Отзыв менеджера

«Когда заказчик в середине проекта сказал, что нужно три приложения вместо одного, команда не запаниковала. Просто перестроили систему сборки за несколько дней и продолжили работать. Заказчик был в шоке, что так бывает. Мы просто сделали свою работу».

Заключение

Главный вызов этого проекта случился не на старте. Мы уже вовсю разрабатывали приложение, когда заказчик сказал: «Нам нужно не одно приложение, а три». Вместо того чтобы переписывать всё с нуля, мы за несколько дней перестроили систему сборки, и график почти не сдвинулся.

Мы не просто выполняем техническое задание — мы проектируем системы, которые готовы к изменениям. Заказчик просил «сделать приложение», а мы сделали архитектуру, которая экономит бюджет, масштабируется и работает стабильно. Это позволяет бизнесу расти без оглядки на IT-ограничения.

Проект передан в ежемесячную техническую поддержку. Мы сопровождаем продукт, оперативно фиксим баги и помогаем с доработками.

Контактная информация

АЙТИФОКС — компания по кастомной разработке ПО. Специализируемся на Flutter, Python, React и AI-решениях. Проектируем архитектуру, которая готова к изменениям — без переписывания кода и срыва сроков.

Сайт: itfox-web.ru


Перейти на сайт

В карточку агентства

Письмо автору кейса

Пользуйтесь реальным опытом в IT и следите за успехами потенциальных подрядчиков и конкурентов
Подпишитесь на рассылку
Подпишитесь
на наши каналы в MAX или Телеграм, чтобы не пропускать новые материалы
MAXКанал в MAXTelegramКанал в TG
Кейсы по теме#Информационные и инженерные технологии

©2007-2026

Проекты компании Proactivity Group
Нажмите «ОК», если вы соглашаетесь с условиями обработки cookie и ваших данных о поведении на сайте, необходимых для аналитики. Запретить обработку cookie можете через браузер