Анализ ситуации Перед началом работы мы провели аудит сайта, детальное проблемное интервью с заказчиком и глубокое код-ревью.
В данном случае нам нужно было убедиться, что уже написанная до нас часть проекта удовлетворяет хотя бы нашим минимальным стандартам. Было важно передать клиенту качественный продукт, который гарантирует масштабируемую архитектуру и аккуратный код, необходимые для поддержки и развития проекта в будущем.
Выводы по результатам аудита были неоднозначными: качество кода, написанного до нас, было удовлетворительным, однако в процессе тестирования были выявлены многочисленные ошибки.
Доработка жизненно важных функци Мы доделали критичный для работы сайта функционал — быстро перенесли его с устаревшей платформы на современный удобный фреймворк Laravel: масштабную часть кода, написанную на Perl, полностью переписали на PHP.
Модернизировали сайт под задачи канала МУЗ-ТВ требовалось доделать и сам сайт, и его мобильное приложение.
Были собраны две рабочие группы: специалисты нашей компании и группа разработчиков мобильных приложений.
Работа между двумя независимыми командами шла гладко благодаря использованию технологии динамического документирования API Swagger. Она решала важную задачу — поддержку описания методов обмена данными в актуальном состоянии.
Работу вели интенсивными месячными спринтами, на регулярных встречах вместе решали, какие оставшиеся задачи по проекту пойдут в работу на ближайший спринт. Сам функционал сайта публиковался по готовности с использованием подхода непрерывной интеграции (CI — Continuous Integration).
Работали в тесном контакте, плечом к плечу, вместе решали возникающие проблемы.
Вот часть задач, которые мы реализовали в рамках этого проекта:
1. Система рекламных баннеров с гибкой настройкой Администратор сайта может точно настраивать показы рекламы на страницах сайта, выбирая нужные баннеры, страницу, время и частоту показов, задавать порядок их показа (ротацию). Система умеет забирать баннеры из внутренних и внешних систем, миксовать их между собой так, чтобы пользователи гарантированно увидели каждый баннер.
Редакция телеканала выпускает большое количество качественного материала, подолгу удерживая зрителя на сайте. Внедренная система показывает всё новые баннеры на той странице, где остался пользователь. Таким образом, число показов рекламных баннеров растет. А это — один из основных способов заработка телеканала в интернете.
2. Голосование за клипы во время их демонстрации в эфире Для голосования «Битва фанклубов» была сделана интеграция телеэфира и мобильного приложения. Мы доработали методы передачи данных и интерфейс взаимодействия (API). Теперь телезрители могут голосовать на сайте МУЗ-ТВ за любимую песню из прямого эфира.
3. Интерактивный лайкер клипов Во время показа клипа пользователи могут делиться своими эмоциями в виде эмодзи. Эмоции передаются во внутреннюю систему телеканала и показываются в прямом эфире.
Мы расширили API-интерфейс, чтобы любой зритель мог поддержать клип своего кумира в мобильном приложении или мобильной версии сайта. Это увеличило число одновременно голосующих пользователей до 1 000 и более.
Выдержать такую популярность лайкера позволила оптимизация конфигурации сервера и реализация кэширования на веб-сервере Nginx.
4. Рекламные ролики перед началом видео Разработали и запустили новый рекламный плеер, позволяющий вставлять рекламные ролики (прероллы) перед видео на сайте, что повысило заработок канала.
Прероллы запускаются на страницах сайта в тот момент, когда пользователь собирается посмотреть интересное ему видео телеканала.
Результат: усиленный сайт запущен в срок! Всего за 3 месяца нам удалось невозможное! Мы модернизировали платформу, новый сайт телеканала был запущен вовремя, релиз состоялся.
Сайт получился профессионально написанным, с качественным кодом, соответствующим всем необходимым стандартам. Расширились возможности взаимодействия со зрителями и монетизации канала.
Руководство МУЗ-ТВ отметило, что мы отлично справились с задачей — и попросило нашу команду помогать с решением дополнительных задач по проекту до тех пор, пока не будет сформирована внутренняя команда разработки.
После того, как телеканал сформировал inhouse-команду, мы подготовили всё необходимое для безболезненной передачи проекта.
Мы гордимся проделанной работой. Работать с МУЗ-ТВ было непросто, но очень интересно!Отзыв клиента — руководителя digital-направления МУЗ-ТВ Веры Пугачевой