/
UPSTOX

Внедрили маркетинговый контент в приложение для инвестиций и трейдинга

Upstox — мобильное приложение для инвестиций и трейдинга. Создано для одноименного гиганта индийского рынка. Работает на iOS и Android

2,5 месяца

работы над проектом
Задача

Задача

Нужно было увеличить вовлеченность пользователей приложения для инвестиций.

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

Решение

Решение

Внедрили обучающий и новостной контент в формате сторис. Такой формат позволяет быстро и удобно переключаться между материалами.

Создали специальные информационные секции с обновляющимися данными: рейтингами, статистикой, котировками и другой информацией.

Процесс разработки

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

Обсудили с заказчиком задачи, прописали техзадание и приступили к разработке.

Тесно работали с командой клиента. Ежедневно созванивались, чтобы обсудить все вопросы совместно с другими командами разработчиков Upstox. Общались в общем канале в Slack.

Для UI/UX-дизайна у Upstox была своя команда, а наша задача заключалась во внедрении контента в мобильные приложения.

Разработка велась на языках Kotlin и Swift для Android и iOS соответственно. У каждой версии были особенности разработки, которые мы должны были учитывать.

В версии приложения для iOS нам нужно было сверстать экраны с помощью кода, не используя визуальный Interface Builder. Мы использовали общую для всего проекта UI-библиотеку клиента. Изредка добавляли кастомные компоненты, когда стандартные не подходили для выбранного дизайна. Поначалу казалось, что верстка кодом — трата времени. Но в процессе мы хорошо оценили этот способ работы. Добавление новых фич шло медленнее, так как код приходилось внедрять в каждый экран. Зато сразу несколько команд могли работать над своими задачами, не боясь задеть другие части проекта.

Обе версии приложения по решению заказчика были сделаны по принципу Clean Architecture в комбинации с MVVM. Это «слоеный» тип архитектуры, в центре которого лежит изолированное ядро с бизнес-логикой, а уже вокруг него строятся интерфейсы и базы данных. Основной принцип такой логики заключается в том, что все зависимости идут строго из внешних кругов во внутренние. Это увеличивает объем кода, но позволяет использовать готовое независимое ядро в любом другом проекте с такой же архитектурой.

Еще мы совместно работали с бэкенд-командой над API для интеграции фронтенда с бэкендом, а также — с фронтенд-командой веб-версии приложения. Это помогало каждой команде быстрее и качественнее выполнить свою работу.

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

Что было самым сложным

Верстка сторис для приложения. Изначально клиент ориентировался на сторис в Instagram. В них много разных элементов: реакции на жесты, автопереходы между экранами, прогресс-бары. Но заказчик решил внедрять в контент видео с YouTube, а не с собственных серверов.

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

Как мы решили эту задачу

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

Светлана Чернявская

Project manager

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

Документирование, конечно, забирает время, часто это откладывают на потом или вообще на это «забивают». Но в больших проектах важно, чтобы документация была в порядке. Это в разы ускоряет вхождение команды в проект и прохождение код-ревью. Работая с Upstox, мы еще раз убедились в этом».

card-0
card-1
card-2

Технологический стек

Backend

Kubernetes
Docker(Docker compose)
PHP (Yii2 framework)
Memcached
Redis
RabbitMQ
PostgreSQL
MINIO
Firebase
Payments via Best2Pay
mapbox

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

KMM (Kotlin Mobile Multiplatform)
Kotlin Gradle DSL
Coroutines
MapBox
Firebase Crashlytics and Analytics
Material Components (Material Design)
MOKO libraries
MOKO-mvvm под капотом AAC (Android Architecture Components)
MOKO-network под капотом ktor-client с генератором сущностей и Api классов
MOKO maps

Результат

Внедрили маркетинговый контент в приложение в виде сторис с обучающими или новостными материалами, в том числе видео. Также сверстали в приложении динамические информационные секции, где клиент видит биржевые рейтинги и котировки, которые обновляются в реальном времени.

С нашей стороны мы выполнили все работы и передали проект заказчику.

iOS
iOS
Android

Маркетинговый контент выводится в формате сторис с ручным управлением (свайпы, тапы и прочие действия). В сторис проигрывается видео с YouTube.

Сторис

Маркетинговый контент выводится в формате сторис с ручным управлением (свайпы, тапы и прочие действия). В сторис проигрывается видео с YouTube.

0

Давайте обсудим ваш проект!

Это бесплатно. Мы расскажем, как приложение решит конкретные бизнес-задачи.

Похожие проекты

APATRIS

2018

JJO

2021

SBI Банк

2020