GorodPay
Транспортные услуги
Россия, Москва
IOS, Android
Ноябрь 2022
GorodPay — это многофункциональная платформа, которая упрощает взаимодействие жителей с городским транспортом. У заказчика уже была MVP-версия сервиса, нужно было бесшовно подключиться к проекту и в сжатые сроки расширить функциональность.
Первая задача от клиента: за пять месяцев доработать приложение до нужного уровня, внедрить новые функции и возможности для пользователей, самые важные из которых — подключение транспортных карт и отслеживание транспорта внутри сервиса.
Важно было не пересобирать проект с нуля и строить заново, а аккуратно подхватить то, что уже есть, и заботливо довести до нужного результата.
В основе нашего решения лежит принцип предоставления релевантного контента пользователю.
Все, что нам нужно – знать, в каком регионе находится пользователь. На основе этой информации персонализируем предложения и контент.
Каждый проект начинаем с этого этапа, уделяем аналитике и данным большое внимание. Вот, что сделали на старте проекта:
- Исследование транспортных карт
- Анализ региональных транспортных решений
- UX-аудит административной панели
- Оптимизация пользовательских путей
Исследование транспортных карт
Изучили все существующие мировые практики и российские транспортные приложения, исследовали их особенности. Их оказалось достаточно много. Например, одну карту можно пополнять безгранично и записать все пополнения разом, а другую только единожды. Или балансы: есть отложенные, а есть неучтенные. Глубоко погрузились в тему, разобрались в тонкостях и поддержали это в дизайне, проработали нужные сценарии.
Анализ региональных транспортных решений
Исследовали транспортные приложения в разных городах, проверили более десятка сервисов. Выявили несколько интересных фич, которые предложили заказчику — например, оплату по QR, которую планируем реализовать в следующих сериях.
UX-аудит административной панели
Провели UX-аудит административно панели, которая уже есть у заказчика. Думали, как сделать админку более удобной и ускорить работу оператора. Предложили рекомендации по улучшению, часть из них уже внедрили: сократили количество переходов внутри интерфейса и пересмотрели методологию агрегации данных.
Оптимизация пользовательских путей
Пути пользователей очень даже исповедимы. На старте проекта заказчик провел нам презентацию, где рассказал про исследования и рекомендации внутренней UX-команды. Мы тоже провели собственный независимый аудит, по итогу которого создали обновленный и улучшенный дизайн главного экрана. Для отслеживания бизнес-показателей приложения добавили интеграцию с Яндекс. Метрикой. Создали события на основные действия клиента, чтобы анализировать пользовательские пути и понимать конверсию.
У нас не было задачи полностью изменить приложение. Скорее наоборот — нужно было бесшовно подключиться к проекту и продолжить его развитие.
Сохранили существующую стилистику, бережно добавляли новые разделы и улучшали старые.
Одним из самых больших изменений стал редизайн главного экрана, полностью переделали его логику. Теперь пользователь видит все транспортные карты сразу, может добавлять новые и пополнять старые.
Аккуратно пересобрали элементы и создали новую дизайн-систему, которую легко развивать и поддерживать. Сумели сохранить визуальный стиль приложения и усовершенствовали сами элементы, чтобы ускорить дальнейшую разработку.
Архитектура
Работали с новым для нас паттерном проектирования — MVI . Наши разработчики адепты Clean, но это не помешало им быстро разобраться в непривычном подходе и молниеносно начать работу над приложением. Не было цели переделывать проект под свои каноны, подстроились под существующие.
NFC
Теперь на Android можно добавлять транспортную карту через NFC. Это намного удобнее, чем вводить большое количество символов вручную – когда цифр больше 20, легко ошибиться.
Перед тем, как это реализовать, наши разработчики сначала проверили, возможно ли это вообще сделать технически.
Как бы смешно не звучала эта фраза, ключей для Подорожника у нас не было. Наш талантливый Android-разработчик Егор придумал, как выйти из положения – сделал демо-версию сервиса, с помощью которого мы узнали о Подорожнике больше и поняли, какие данные сможем оттуда получать. Спойлер: больше всего нам нужны были ID пользователей.
Разделение сборок
На этом проекте впервые стали разделять Android-сборки на Huawei и Google. Google Play не любит сборки с чужими сервисами и грозится удалить приложения, если обнаружит неопознанные объекты. Работает двоесборье так: если приложение установлено на досанкционном телефоне — сборка будет использовать Google-сервисы. Если смартфон послесанкционный, в ход пойдет сборка с HMS.
Интересный факт, операционная система Huawei называется Harmony. Работает на основе Android.
Сканирование штрих-кода
У транспортной карты есть номер, но он достаточно большой, около 20 символов. Вводить руками неудобно, поэтому сделали возможность внести карту в приложение с помощью штрихкода.
Push-уведомления
Подключили пуши для оповещения пользователей. Теперь они получают информацию по статусам карт, не заходя в приложение.
Разработка Backend
Backend делают наши партнеры, команда DEX. Выстроили с ними хорошие взаимоотношения и вместе вершим великие дела. Используем современные практики вроде Backend-Driven UI — выводим иконки c сервера, чтобы быстрее обновлять контент. Еще ребята помогли нам реализовать возможность создания регионально-зависимого контента — например, отображение сторис в зависимости от региона.
Наземное
На проекте практикуем функциональные виды тестирования: регрессионное и смоук. На специальном терминале тестировали, корректно ли работают стоп-листы. Также написали тест-кейсы, чтобы прогонять по ним новые сборки. Из‑за санкций они периодически менялись, поэтому не забывали руководствоваться и здравым смыслом.
Такой терминал приехал к нам в офис, чтобы приблизить условия тестирования к полевым, точнее, к автобусным.
Подземное
В тестировании принимал участие не только QA-отдел, но и вся команда MobileUp. В аккаунте у руководителя проекта Марго есть все наши Подорожники. Для того, чтобы проверить пополнение транспортных карт в реальном времени, она несколько раз в день ходила в метро. Записывала пополнения карты вручную, чтобы убедиться, что у пользователей все работает четко.
Уложились в пять месяцев и вместе с командой GorodPay запустили новую версию продукта. Будем и дальше работать над развитием сервиса. Продолжим развивать историю с персонализацией контента для пользователя, чтобы GorodPay стал еще более полезным.
Алексей Скогорев
CPO GorodPay
«Если говорить о будущем, то наша миссия — через GorodPay сделать удобной и бесшовной оплату всех поездок, не только на общественном транспорте. Вместе с тем, мы понимаем, что в ряде регионов есть свои транспортные привычки, транспортные карты — например, „Подорожник“ в Санкт-Петербурге или „ЕКАРТА“ в Екатеринбурге. И теперь в GorodPay появилась возможность пополнять эти карты. Не секрет, что „Подорожником“ пользуются около 90% жителей Санкт-Петербурга и конечно „звёзды сошлись“: ребята из команды МobileUp были просто пользователями Подорожника, а стали еще непосредственными участниками улучшения и развития сервиса пополнения этой транспортной карты.
Наша цель — повышение качества транспортных проектов ГПБ (АО) во всех регионах нашего присутствия и даже шире. Первые шаги сделаны, видим позитивные отклики от Пользователей и готовы к следующим шагам.»
MobileUp с удовольствием обсудит вашу задачу