
Choć nie zawsze jesteśmy tego świadomi, muzyka jest nieodłącznym elementem życia każdego człowieka. Towarzyszy podczas codziennych czynności zarówno w domu, jak i w pracy. Podkłady muzyczne są wykorzystywane w reklamach, dbają także o dobry nastrój podczas zakupów w galeriach handlowych. Ci, którzy w sposób świadomy wybierają muzykę, której chcą słuchać coraz rzadziej sięgają po płyty kompaktowe czy winylowe, decydując się na serwisy streamingowe. O wyborze tego medium decyduje natychmiastowy dostęp do ogromnych zasobów muzycznych bez ponoszenia dodatkowych kosztów. Dlatego z przyjemnością podjęliśmy się współpracy z Empik, tworząc kompleksowy serwis streamingowy Empik Music. Poszerzyliśmy tym samym ofertę IT dla sektora mediowego w ramach filaru Software Development.
Cel projektu
Dla Empiku, największego polskiego dostawcy treści kulturalnych i rozrywkowych, stworzyliśmy aplikację oferującą streaming treści muzycznych. Ze względu na dużą konkurencyjność podobnych rozwiązań ważne stało się odpowiednie przemyślenie aplikacji tak, aby oferowała unikalne funkcje, niedostępne w aplikacjach konkurencji. Istotną kwestią był dostęp do jak największej liczby utworów muzycznych oraz integracja z innymi usługami Empik.
Opis rozwiązania
Empik Music to cyfrowa usługa strumieniowania muzyki, oferująca nieograniczony dostęp do katalogu milionów utworów muzycznych z całego świata. Rejestracja odbywa się poprzez konto empik.com. Oznacza to, że klienci korzystający z innych usług Empik nie muszą zakładać kolejnego konta, aby korzystać z zasobów Empik Music.
Aplikacja umożliwia swobodne przeglądanie jej zasobów (wykonawcy, albumy, playlisty), dodawanie utworów do list, tworzenie własnych playlist, a także odsłuchiwanie muzyki w trybie offline. Cechuje ją brak reklam, a jej unikalną funkcją jest analiza historii zakupów muzyki na stronie empik.com i tworzenie na jej podstawie muzycznych rekomendacji. Możliwe jest także zapoznanie się z rekomendacjami znanych artystów, postaci polskiego świata kultury, a także ekspertów Empiku. Fani spotkań na żywo mogą uzyskać informacje o koncertach i spotkaniach z artystami, a amatorzy śpiewania ucieszą się z bazy tekstów piosenek z funkcją karaoke.
Produkty projektu

aplikacja mobilna w wersji Android i iOS

baza danych i mobile API

moduł streamingowy

system CMS

moduł raportowy

moduł do Centrum Wsparcia Klienta
Aplikacja Empik Music oferuje najwyższą jakość streamingu plików audio w technologii HLS, przy wykorzystaniu kodeka AAC/AAC+ do 320 kbps. Narzędzie to jest proste w utrzymaniu i integracji z aplikacjami zewnętrznymi, dzięki czemu można ją łatwo rozszerzać o nowe funkcje.
Za prawidłowe działanie aplikacji odpowiada kilkadziesiąt maszyn wirtualnych. Ruch sieciowy generowany w ramach usługi Empik Music jest równomiernie rozkładany na wszystkie instancje serwerów aplikacyjnych i streamingowych. Dla zapewnienia płynnej i bezpiecznej obsługi użytkowników wykorzystano usługę CloudFlare. Rozwiązanie zostało stworzone i rozwijane w środowisku developerskim stworzonym przez Euvic w chmurze Microsoft Azure, z wykorzystaniem Azure DevOps.

Zalety rozwiązania
- pełna integracja z innymi aplikacjami Empiku,
- synchronizacja z historią zakupów,
- łatwe tworzenie i importowanie playlist,
- możliwość słuchania w trybie offline,
- dostęp do katalogu milionów utworów muzycznych,
- brak reklam,
- informacje o koncertach i spotkaniach z artystami,
- baza tekstów piosenek z funkcją karaoke,
- playlisty i rekomendacje stworzone przez znanych artystów, postaci polskiego świata kultury i ekspertów Empiku,
- wygodny model subskrypcyjny.
Zespół projektowy
Project Manager, 2x Product Owner, 11x Technical Leader, Team of Developers, Team of QA Engineers, DevOps.
Wykorzystane technologie
.NET Core, ASP.NET Core MVC (CMS), ASP.NET Core Web API, Microsoft SQL Server, Kotlin 1.3+, Swift 5.0, Windows Server, IIS, CentOS, VMWare vSphere, ELK (ElasticSearch+Kibana), Grafana, Prometheus, Open JDK, Spring Boot, Redis Cache, RabbitMQ, Envoy, HAProxy, Ansible, Docker, Hibernate / Entity Framework Core, JUnit / xUnit, Firebase Crashlytics, Firebase Performance Monitoring, Firebase Remote Config, Cloudflare.