Задача

Необходимо разработать production-ready приложение для Android TV (Smart TV), которое станет клиентом для существующего бэкенда онлайн-кинотеатра. API предоставляется (формат Swagger/OpenAPI), есть тестовый стенд для интеграции.

Требования к функционалу

  • Каталог фильмов и сериалов с навигацией по категориям и фильтрациям;
  • Детальная карточка тайтла (название, описание, постер, рейтинг, трейлер);
  • Видеоплеер с поддержкой воспроизведения контента (HLS, DRM, субтитры, переключение качества);
  • Избранное и продолжение просмотра (синхронизация с сервером);
  • Поиск по каталогу (строка ввода, автоподстановки, фильтры);
  • Авторизация/регистрация пользователя, профиль (история, настройки);
  • Аналитика (сбор базовых метрик, просмотры, ошибки плеера);
  • Архитектура, ориентированная на поддержку новых функций и масштабирование.

Technical level requirements

- грамотное управление фокусом при помощи D-pad (родная навигация Android TV);
- работа с тачскрином не нужна (только remote / gamepad);
- минимальная версия Android (Android 5.0+ или рекомендуемая);
- кэшируй сведения о контенте для работы offline (ограниченные сценарии);
- публикация в Google Play при необходимости (подготовка иконок, скриншотов, релизной версии).

Дополнительно

- пожелают unit-тесты и integration-тесты (не менее 30% покрытия);
- четкая Rest API интеграция по дизайну MVP/MVVN;
- быстрые анимации загрузки контента (эффекты skeleton-загрузки, картинки, кэширование битблоков);
- стабильная работа плеера лучше, чем шикарный интерфейс).