Кейс · Сервисы
Стриминговый сервис для благотворительности и бизнес-интервью — Разработка стримингового сервиса
Заказчик для проекта является крупнейшая медийная компания России. Для диверсификации бизнеса необходимо было разработать стриминговую платформу, которая ведет трансляции интервью бизнесменов и собирает донаты на благотворительность.
- Отрасль
- Сервисы
- Команда проекта
- 2 человек
- Команда
- 6 специалистов
- Срок
- 6 месяцев
- Java
- Vue
- DevOps

Особенности реализации
На рынке существует множество решений для стриминга, но нам необходимо было разработать собственное, и чтобы оно не уступало коммерческим решениям по качеству и скорости. В дальнейшем этот сервис планировалось упаковать в коробочную версию и продавать как закрытый корпоративный продукт для крупного бизнеса. Ввиду данных требований, мы не могли пренебречь быстродействием и приходилось сразу закладывать основу для нагрузки в виде многотысячной аудитории.
Реализация
Модуль "Стриминг"
Основной функционал для создания стриминга и подготовке к нему
Модуль "Комната пользователя"
Кабинет пользователя, через который он мог просматривать стрим, донатить, оставлять комментарии.
Модуль "Донаты"
В основном личном кабинете пользователя привязана карта, и чтобы проводить донаты не нужно вводить данные карты, только подтверждать транзакцию
Модуль "Архив записей"
Во время стриминга происходить его запись и сохранение на сервер. Отдельно в личном кабинете есть архив стримов.
Технологии и подходы
Back-end
В рамках реализация проекта были использованы последние версии Java. В работе мы использовали VLCJ, потому что в дополнение к прямой трансляции видео, мы получили все функции VLC Media Player.
QA
Процесс тестирования документировался и проводился в FIRETMS. В результате тестирования было написано более тысячи тест кейсов, большая часть из которых покрыта автотестами. Такой скрупулезно подход позволяет оперативно отлавливать возможные баги и не отправлять в продакшн изменения с критическими ошибками.
Биллинг
То что просто для клиента, то очень сложно реализуемо на стороне сервиса. Как говорилось выше, оплачивать донаты пользователь может одним нажатием кнопки, так как карта у него привязана к личному кабинету. Поэтому наша задача была в проверке транзакций и их корректности, а также требовалось обеспечить максимальную конфиденциальность.
Удобный формат работы и методология
Проект реализовывался по формату аутстафф, где мы обеспечили заказчику подключение нужных специалистов. Управление проектом было полностью на стороне заказчика. Команда работала над проектом по гибкой методологии FDD, при которой программное обеспечение создавалось инкрементально с самого начала.
Результат
Резюме: Такой проект очень специфичный, но позволил команде проявить себя с наилучшей стороны. Потоковое видео, это то, с чем редко работаешь в реальной жизни, но всегда интересно. Команда узнала для себя что-то новое и воплотила накопленные знания в данном кейсе.
Команда на проекте
Нужна такая же экспертиза в команде?
Подберём инженеров под ваш стек и задачи — обсудим за день.