Curriculum Vitae

Plus de 15 ans d'expérience dans la construction de systèmes évolutifs et la direction d'équipes techniques.

Télécharger le CV PDF
Fév 2023 - Présent

Tech lead ~ Architecte (Équipe Vidéo)

TF1 - Freelance
Boulogne-Billancourt / Remote
  • Refonte complète du processus d'encodage vidéo en Go, améliorant le système pour la diffusion over-the-top (OTT) et télévision sur IP (IPTV) en utilisant Temporal.io.
  • Définition et refonte d'un nouveau modèle de livraison OTT, ainsi que la création d'une API pour diffuser la vidéo à la demande (formats DASH et HLS).
  • Développement d'un gestionnaire de transcodeurs pour gérer uniformément diverses ressources de transcodage (Elemental, Ateme, AWS MediaConvert, FFmpeg, etc.).
  • Révision des processus d'intégration continue et de déploiement continu (CI/CD) pour plusieurs applications, en adoptant une approche GitOps avec Kustomize et ArgoCD.
  • Développement d'un composant générique pour écouter des événements (SQS, Kafka, etc.) et déclencher des actions (gRPC, appels HTTP, etc.), principalement utilisé pour écouter les événements S3 et déclencher des workflows Temporal.
  • Développement d'API, intégration de partenaires et mise en œuvre de workflows d'ingestion de contenu pour des catalogues tiers (Arte, L'Équipe, Figaro TV, etc.).
  • Génération dynamique de manifestes DASH et HLS.
GoTemporal.ioAWS MediaConvertFFmpegVideo CodecsKafkaRedisReactGitOpsBazelArgoCD
2022 - 2023

Tech lead ~ Architecte Cloud

Crédit Agricole - Freelance
Montrouge / Remote
  • Création d'une stack technique principalement en Go permettant la mise en œuvre d'un outil pour la fourniture d'un catalogue de services pour les offres de cloud public (AWS, GCP et Azure)
  • Définition d'un formalisme permettant la déclaration de services agnostiques avec gestion d'état
  • Développement du backend en Go (HTTP API / gRPC) avec tests unitaires et fonctionnels
  • Développement d'un provider Terraform avec auto-génération de code à partir des services déployés
  • Déploiement de l'architecture sur Google Cloud Platform
  • Développement d'une UI web React (TypeScript) pour les fournisseurs de services et les espaces projets clients
GoTerraformKubernetesReactTypeScriptAWSGCPAzure
2018 - 2022

Tech lead ~ Architecte (Équipe Backend)

TF1 - Freelance
Boulogne-Billancourt / Remote
  • Refonte complète du backend MyTF1 (servant web, mobile & IPTV)
  • Définition et développement de multiples micro-services backend (catalogue, utilisateur, SEO, ...) développés principalement en Go, exposés par un serveur GraphQL avec une communication faite avec gRPC (Protocol buffers)
  • Définition et développement de la médiathèque permettant la gestion des médias : API GraphQL en Go, front end développé en VueJS et CDN AWS Cloudfront
  • Définition et développement d'une architecture orientée événements pour le workflow de vie des données numériques MyTF1 avec Kafka
  • Travail sur l'instrumentalisation OpenTelemetry du code de traçage et des messages Kafka
  • Implémentation d'un service d'achat/abonnement cross-provider (Stripe, Apple Store, Google Play) pour l'offre MYTF1 MAX
GoGraphQLgRPCMicroservicesDockerKubernetesPrometheusGrafanaRedisKafkaAWSArgoCDStripe
2018 - 2018

Architecte - France.tv

France Télévisions - Eleven Labs
Boulogne-Billancourt / Remote
  • Prise de décision concernant les choix d'architecture de la plateforme France.tv sur les évolutions
  • Cadrage des sujets techniques liés aux API des applications IPTV pour Orange et Free
  • Mise en place de versioning sur les différentes API (sous NodeJS et Symfony) afin de pouvoir livrer plus rapidement en production
  • Ateliers techniques avec les prestataires en charge des applications front end IPTV pour déterminer les flux d'appels et les données échangées
  • Évolutions sur le modèle de données France.tv suite au projet d'uniformisation des sources de données des différentes vidéos
  • Mise en place d'un cluster Kubernetes pour chaque environnement et pour que les feature teams aient un environnement dédié
  • Sujets transverses :
  • Définition de l'architecture technique des solutions pour les portails des sites France Télévisions
  • Définition des briques composants nécessaires à l'évolution d'un modèle de données (indexation, workers, ...)
  • Mise en place de GraphQL comme proxy vers différentes API métier pour optimiser les temps de chargement sur les applications mobiles
PHPSymfonyElasticsearchRedisRabbitMQDockerKubernetesPrometheusGrafanaGraphQL
2017 - 2018

Tech lead ~ Architecte

ETS Global
Paris / Remote
  • Reprise de l'architecture d'une douzaine d'applications métier Angular 1 Symfony 2/3, PHP 5/7 et micro-services, notamment pour la gestion des sessions de tests, contrats, envoi d'emails, etc...
  • Travail en amont des projets avec les équipes clients et les équipes de développement pour définir l'architecture du projet selon les besoins
  • Gestion du provisionning et déploiement des applications avec Ansible, de l'environnement de développement à la production
  • Changement d'hébergement vers AWS (Amazon Web Services) : utilisation de Terraform + Ansible pour la création des ressources et le provisionning initial
  • Mise en place du monitoring : ELK stack (Elasticsearch, Logstash, Kibana) pour la gestion des logs applicatifs et monitoring système et métier via Prometheus et Grafana
  • Travail sur des solutions pour divers problèmes, tels que : Authentification entre plusieurs applications (SSO), gestion multi-pays, multi-langues et multi-fuseaux horaires dans les applications, implémentation d'une brique WebSocket pour gérer les notifications temps réel sur les applications
PHPSymfonyElasticsearchMongoDBRedisPrometheusDocker
2016 - 2017

Tech lead

CNAMTS - Digital factory
Paris
  • Support (peer programming) et revue de code de quatre développeurs sur la mise en œuvre d'un socle applicatif Symfony et son écosystème (outils de versioning, gestion de dépendances, tests unitaires, tests fonctionnels, ...)
  • Mise en place de socles applicatifs projets pour être cohérent avec la plateforme (sortie de logs au format JSON pour indexation dans Fluentd, identification JWT des API,...)
  • Mise en place d'une intégration continue sous Jenkins afin de lancer les tests unitaires et fonctionnels à chaque push de code d'un développeur puis déclencher un pipeline de déploiement continu
  • Travail avec les architectes et PO de la CNAM pour choisir les solutions appropriées à mettre en œuvre sur une plateforme PaaS OpenShift (basée sur Docker)
  • Mise en place des socles techniques du projet (Object Storage Ceph Gateway, serveur distant Selenium pour les tests fonctionnels,...)
  • Accompagnement du Product Owner du projet aux rituels agiles (écriture de user stories, accompagnement à l'écriture de tests fonctionnels en langage Gherkin)
PHPSymfonyElasticsearchPuppetAnsibleDockerOpenShiftJenkins
2012 - 2016

Ingénieur Logiciel PHP

Ekino
Paris
  • Développement PHP sous le framework Symfony :
  • Développement de l'espace client Renault bank & Nissan finance s'intégrant avec des web-services SOAP
  • Refonte complète du site FFF.fr (Fédération Française de Football) utilisant Symfony & Sonata
  • Aide au développement de certaines fonctionnalités sur Digiposte Symfony / Angular 1
  • Utilisation et participation au développement de la suite de bundles Sonata
  • Utilisation des outils suivants : déploiement via Capifony, versioning via Git, ...
  • Écriture de tests unitaires utilisant PHPUnit sur tous les projets sur lesquels j'ai travaillé
PHPSymfonyOpen-SourceRedisMySQLAnsibleDockerVagrantNodeJS
2010 - 2011

Ingénieur Logiciel PHP

Smartbox
Courbevoie
  • Développement de modules personnalisés (gestion de prix, module sitemap) sous Magento
  • Refonte de la gestion des coffrets clients MySmartbox (réservation, échange, suivi de commande, ...) sous Magento
  • Maintenance applicative tierce sur le site Smartbox France, basé sur Magento
PHPMagentoVarnishMySQLJavascript
2009 - 2010

Ingénieur Logiciel PHP

Epixelic - Web agency
Paris
PHPZend FrameworkMySQLJavascript