Развитие и поддержка MVP видеоплатформы

ИТ-компания RedLab приняла участие в реализации проекта по модернизации сервиса для публикации и просмотра видео. В этой статье делимся кейсом.

Развитие и поддержка MVP видеоплатформы

О клиенте

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

О проекте

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

Описание задачи

Клиент сформировал основной запрос — в кратчайшие сроки внедрить инструменты для монетизации digital-материалов. Помимо разработки новых современных опций команде RedLab требовалось:

  • Доработать корневую фичу: анализ архитектурных решений и исправление «узких мест».
  • Адаптировать функционал под различные типы устройств: корректная работы программы в веб-версии и на мобильных устройствах.
  • Обеспечить бесперебойную работу платформы: масштабирование ИТ-инфраструктуры под растущий трафик и нагрузку.

Реализация

В ходе реализации проекта работы велись специалистами RedLab по нескольким направлениям.

Для IOS и Android:

  • Реализовали архитектурный подход Unidirectional Data Flow, с помощью которого обновили функционал монетизации видеоконтента и переписали основной экран приложения. Технология улучшила производительность ИТ-продукта и сэкономила ресурсы на поддержку легаси.
  • Перешли на фреймворк SwiftUI, что позволило упростить создание пользовательских интерфейсов, быстрее разрабатывать прототипы и писать меньше строк кода.
  • Использовали синтаксис Async/await, чтобы оптимизировать работу с сетью и другими асинхронными операциями, а также повысить производительность приложения.
  • Применили нативные реактивные подходы в процессе мобильной разработки, благодаря чему стали эффективно управлять состоянием программы.
  • Постепенно делили проект на модули. Микросервисная методология помогла разным командам разработки работать независимо и эффективно.
  • Создали различные template и документы с пояснениями и обсуждением различных задач по улучшению общей экосистемы проекта.
  • Спроектировали архитектуру всего приложения и отдельных модулей на базе MVI с применением библиотеки Orbit, а внедрение зависимостей внутри модулей осуществили благодаря Dagger 2. Удалось улучшить структурированность кода.
  • Настроили GitLab-CI flow, позволяющий автоматически строить сборки проекта в трех режимах: Debug (для develop branch), Beta (для системного тестирования) и Release (для публикации в магазинах приложений).
  • Выполнили построение компонентов в системе таким образом, что оно происходит, если код прошел review и были успешно выполнены все Unit-тесты.
  • Реализовали навигацию между экранами приложения с помощью Navigation Architecture Component вместо ранее используемой библиотеки Cicerone. Внедренная технология предлагает более обширную документацию и улучшенную тестируемость.
  • Разработали сложную «выпрыгивающую» анимацию кнопок для UI-интерфейса, которая работает как для экранов, выполненных с помощью Jetpack Compose, так и для экранов, реализованных через XML layout.
  • Создали набор дополнительных экранов, позволяющих пользователю найти блогеров и видеоклипы по заданным критериям и добавить ссылки на контент в свои ролики.

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

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

Результат

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

11
Начать дискуссию