A propos de France Télévisions:
France Télévisions est le groupe de télévision national français, regroupant les 6 chaînes TV populaires: France 2, France 3, France 4, France 5, La 1ère et France Info.
Contexte du projet:
France Télévisions possède une équipe technique appelée "SI Vidéo" qui s'occupe essentiellement de concevoir et maintenir des APIs
pour le traitement et le référencement des vidéos, qui seront mises à disposition des autres équipes numériques du groupe.
J'ai donc intégré durant 1 an et demi cette équipe de 6 développeurs et 1 Product Owner afin de faire évoluer les APIs de
commande d'encodage et de transformation du flux vidéo télé en vidéos individuelles et encodées pour le format web.
Il a fallu également concevoir de nouvelles APIs REST qui référencent ces vidéos contenant de nombreuses métadonnées.
Réalisations:
- Evolution de la state machine écrite en PHP Symfony qui commande la découpe et la transformation des vidéos au format
web et mobile, via des jobs de traitement.
- Refactoring du code afin de migrer l'application d'une architecture monolithique vers une architecture microservices.
- Suite à des problématiques de performances nous avons décidé de mettre en place le pattern CQRS (Command Query Responsibility Segregation)
via l'outil RabbitMQ et la bibliothèque PHP Swarrot afin de traiter certains appels API en asynchrone.
- Conception de nouvelles APIs REST sur Symfony 3 pour le référencement et la recherche des vidéos replay.
- Gestion du Caches HTTP, Cache Varnish et Redis pour palier aux très nombreux appels API (> 20 millions d'appels API / mois)
- Ecriture de tests unitaires sur PHPUnit et fonctionnels sur FitNesse et Codeception
- Développement de scripts Jenkins pour l'intégration continue.
Environnement technique:
PHP 7
Symfony 3
API REST
RabbitMQ
Docker
PHPUnit
Codeception
Redis
Jenkins