Транспортное приложение для Городской мобильности

Мобильные приложения

Кто обратился

Городская мобильность — российская компания-разработчик цифровых сервисов для общественного транспорта.

Запрос клиента

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

Проблема и цель

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

Задачи

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

Что мы сделали

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

Команда

Руководитель проекта

5 Backend-разработчиков

Архитектор

Аналитик

DevOps-инженер

QA-инженер

Срок реализации проекта

8 месяцев

Какую технологию использовали

Java

Микросервисы

PostgreSQL

Kafka

Какой получили результат

  • Запустили мобильное приложение на рынок. Теперь приложение Транспорт+ можно найти в App Store. 
  • Масштабировали систему и повысили ее отказоустойчивость. 
  • Построили аналитическую и оперативную отчетность о всех транзакциях, проходящих в системе.
  • Усилили безопасность работы системы.
  • Добавили наземные и водные виды транспорта.