Resume

More than 15 years of experience building scalable systems and leading technical teams.

Download PDF Resume
Feb 2023 - Present

Tech lead ~ Architect (Video Team)

TF1 - Freelance
Boulogne-Billancourt / Remote
  • • Complete overhaul of the video encoding process in Go, enhancing the system for both over-the-top (OTT) and Internet Protocol television (IPTV) delivery using Temporal.io.
  • • Definition and redesign of a new OTT delivery model, along with the creation of an API to stream video on demand (DASH and HLS formats).
  • • Development of a transcoder manager to uniformly handle various transcoding resources (Elemental, Ateme, AWS MediaConvert, FFmpeg, etc.).
  • • Revision of continuous integration and continuous deployment (CI/CD) processes for multiple applications, adopting a GitOps approach with Kustomize and ArgoCD.
  • • Development of a generic component to listen to events (SQS, Kafka, etc.) and trigger actions (gRPC, HTTP calls, etc.), primarily used for listening to S3 events and triggering Temporal workflows.
  • • API development, partner onboarding, and implementation of content ingestion workflows for third-party catalogs (Arte, L'Équipe, Figaro TV, etc.).
  • • Dynamic generation of DASH and HLS manifests.
GoTemporal.ioAWS MediaConvertFFmpegVideo CodecsKafkaRedisReactGitOpsBazelArgoCD
2022 - 2023

Tech lead ~ Cloud Architect

Crédit Agricole - Freelance
Montrouge / Remote
  • Creation of a technical stack mainly in Go allowing the implementation of a tool for the provision of a service catalog for public cloud offers (AWS, GCP and Azure)
  • • Definition of a formalism allowing the declaration of agnostic services with state management
  • • Development of the backend in Go (HTTP API / gRPC) with unit and functional tests
  • • Development of a Terraform provider with auto-generation of code from the deployed services
  • • Deployment of the architecture on Google Cloud Platform
  • • Development of a React web UI (TypeScript) for service providers and customer project spaces
GoTerraformKubernetesReactTypeScriptAWSGCPAzure
2018 - 2022

Tech lead ~ Architect (Backend Team)

TF1 - Freelance
Boulogne-Billancourt / Remote
  • • Complete overhaul of the MyTF1 backend (serving web, mobile & IPTV)
  • • Definition and development of multiple backend micro-services (catalog, user-related, SEO, ...) developed mainly in Go, exposed by a GraphQL server with a communication made with gRPC (Protocol buffers)
  • • Definition and development of the media library allowing media management: GraphQL API in Go, front end developed in VueJS and CDN AWS Cloudfront
  • • Definition and development of an event-driven architecture for the MyTF1 digital data life workflow with Kafka
  • • Work on OpenTelemetry instrumentalisation of tracing code and Kafka messages
  • • Implement a cross-provider (Stripe, Apple Store, Google Play) purchase/subscription service for MYTF1 MAX offer
GoGraphQLgRPCMicroservicesDockerKubernetesPrometheusGrafanaRedisKafkaAWSArgoCDStripe
2018 - 2018

Architect - France.tv

France Télévisions - Eleven Labs
Boulogne-Billancourt / Remote
  • • Decision making regarding the architecture choices of the France.tv platform on evolutions
  • • Framing of technical topics related to IPTV application APIs for Orange and Free
  • • Implementation of versioning on the various APIs (under NodeJS and Symfony) in order to be able to deliver more quickly in production
  • • Technical workshops with service providers in charge of IPTV front end applications to determine the call flows and data exchanged
  • • Evolutions on the France.tv data model following the project to standardize the data sources of the different videos
  • • Set up a Kubernetes cluster for each environment and so that feature teams have a dedicated environment
  • Cross-cutting topics :
  • • Definition of the technical architecture of solutions for the portals of the France Télévisions sites
  • • Definition of the component bricks necessary for the evolution of a data model (indexation, workers, ...)
  • • Setting up GraphQL as a proxy to different business APIs to optimize loading times on mobile applications
PHPSymfonyElasticsearchRedisRabbitMQDockerKubernetesPrometheusGrafanaGraphQL
2017 - 2018

Tech lead ~ Architect

ETS Global
Paris / Remote
  • • Takeover of the architecture of a dozen Angular 1 Symfony 2/3, PHP 5/7 business applications and micro-services, notably for managing test sessions, contracts, sending emails, etc...
  • • Work upstream of projects with client teams and development teams to define project architecture according to needs
  • • Provisioning management and deployment of applications with Ansible, from the development environment to production
  • • Hosting change to AWS (Amazon Web Services): use of Terraform + Ansible for resource creation and initial provisioning
  • • Implementation of monitoring: ELK stack (Elasticsearch, Logstash, Kibana) for application log management and system and business monitoring via Prometheus and Grafana
  • • Work on solutions for various problems, such as: Authentication between several applications (SSO), multi-country, multi-languages and multi-time zones management in applications, implementation of a WebSocket brick to manage real-time notifications on applications
PHPSymfonyElasticsearchMongoDBRedisPrometheusDocker
2016 - 2017

Tech lead

CNAMTS - Digital factory
Paris
  • • Support (peer programming) and code review of four developers on the implementation of a Symfony application base and its ecosystem (versioning tools, dependency management, unit tests, functional tests, ...)
  • • Implementation of project application bases to be consistent with the platform (output of logs in JSON format for indexing in Fluentd, JWT identification of APIs,...)
  • • Implementation of a continuous integration under Jenkins in order to launch unit and functional tests each time a developer's code pushes and then trigger a continuous deployment pipeline
  • • Work with CNAM architects and POs to choose appropriate solutions to implement on a PaaS OpenShift platform (based on Docker)
  • • Implementation of the technical bases of the project (Object Storage Ceph Gateway, Selenium remote server for functional tests,...)
  • • Accompanying the Product Owner from the project to the agile rituals (writing user stories, accompanying the writing of functional tests in Gherkin language)
PHPSymfonyElasticsearchPuppetAnsibleDockerOpenShiftJenkins
2012 - 2016

PHP Software Engineer

Ekino
Paris
  • PHP development under the Symfony framework :
  • • Development of Renault bank & Nissan finance customer area integrating with SOAP web-services
  • • Full overhaul of FFF.fr website (French Football Federation) using Symfony & Sonata
  • • Help to develop some features on Digiposte Symfony / Angular 1
  • • Use and participating on development of the Sonata bundles suite
  • • Use of the following tools: deployment via Capifony, versioning via Git, ...
  • • Writing unit tests using PHPUnit on all projects I worked on
PHPSymfonyOpen-SourceRedisMySQLAnsibleDockerVagrantNodeJS
2010 - 2011

PHP Software Engineer

Smartbox
Courbevoie
  • • Development of customized modules (price management, sitemap module) under Magento
  • • Redesign of MySmartbox customer management boxes (reservation, exchange, order tracking, ...) under Magento
  • • Third-party application maintenance on the Smartbox France site, based on Magento
PHPMagentoVarnishMySQLJavascript
2009 - 2010

PHP Software Engineer

Epixelic - Web agency
Paris
  • • Development of a job board named Jobs&Joy website using Zend Framework
  • • Migration of the Communication-pro product platform to Zend Framework
  • • Web development using the PHP Zend Framework (version 1.9)
PHPZend FrameworkMySQLJavascript