CV
Développeur passionné ; quel que soit le langage de programmation, tout est prétexte à créer et à y prendre du plaisir. Par mes diverses expériences, j'ai découvert et aiguisé mes pratiques du craft, notamment par des ateliers de partage et de veille collective.
En animant des communautés de pratiques, en facilitant l'internalisation de formations ou encore, en ludifiant des ateliers de pratique, j'espère pouvoir transmettre cette passion aux personnes qui m'entourent et les aider à apprendre les compétences techniques qui les font rêver.
Compétences¶
- OS : WINDOWS, LINUX, OSX
- Langages: JAVA, KOTLIN, JAVASCRIPT, TYPESCRIPT, DART, PYTHON
- Frameworks: SPRING (BOOT, CORE, MVC, FLUX), REACT, ANGULAR, FLUTTER
- SGBD: POSTGRESQL, MONGODB, ORACLE, MYSQL
- Outils: INTELLIJ, MAVEN, NPM, JUNIT, JEST, GIT, GITLAB (&CI), JENKINS
- Versioning: GIT
- Packet Manager: NPM, MAVEN
- Big Data: SPARK, HADOOP, ELASTIC SEARCH
- Serveurs: GCLOUD, AWS (EC2, S3, SAGEMAKER, ELASTICBEANSTALK, LAMBDA)
- Architecture: HEXAGONALE, MICROSERVICES, MONOLITHE
- Pratiques: SOFTWARE CRAFTSMANSHIP (TDD, REFACTORING, CI, PAIR-PROGRAMMING), SCRUM, KANBAN
DOMAINES D’INTERVENTIONS
- Développement, Back-End et Front-End dans le respect des pratiques crafts
- Sensibilisation, partage et mentoring sur les pratiques crafts
- Animation d’équipe, et de communautés de pratiques
- Formateur : Clean Code & principes SOLID / Tests doubles & double loop TDD
TRAINING & CONFÉRENCES SUIVIS
- Conférence NCraft (2018-2019, 2022-2024)
- Formation « Process Communication Model » - Le Pas d’après 2022
- Conférence « Devfest » (2021-2023, dont un talk en 2022)
- Formation Domain Driven Design - Shodo 2022 (Julien Topçu et Josian Chevalier)
- Conférence « Agile Tour Nantes » - 2021
- Formation « Architecting on AWS » - Revolve 2021
- Formation Flutter - Zenika 2021
- Formation Sfeir School Speaker - Sfeir 2020
- Formation Les bases du Machine Learning - e-Voyageur Technologies 2019
- Formation en ligne Sketchnoting - Bloculus (2019)
- Formation Refactoring - Arolla 2017
- Formation Domain Driven Design - Arolla 2017
CENTRES D'INTÉRÊT
- Transmettre, Apprendre, Partager
- Ateliers d’intelligence collective
- Gamification et ses applications
- Co-auteur du livre « Software craft - TDD, Clean Code et autres pratiques essentielles » - 2021
Expériences¶
Shodo Nantes
¶
🗓️ Depuis Septembre 2021
👤 Coach Craft, Coach Agile Technique, Développeur Senior. Animateur de communauté.
Transparence, Confiance et redistribution des richesses. Pour mettre ces valeurs en pratiques, Shodo propose un modèle d'entreprise novateur. Une grille de salaire transparente et publique, ainsi que des marges fixes et toutes aussi transparentes, Shodo souhaite redonner du sens au salariat, tout en garantissant des prestations de qualité.
Tous les membres de Shodo sont des développeuses et développeurs convaincu.e.s par les principes du Software Craftsmanship et aggueri.e.s aux bonnes pratiques de développement. Chacun ajuste sa rémunération et son temps libre pour se former, échanger ou se reposer, dans le respect des engagements clients pris.
DÉCATHLON
¶
🗓️ Depuis Février 2024
👤 Coach Craft
Décathlon est une entreprise française spécialisée dans la vente d'articles de sport et de loisirs. Avec plus de 1700 magasins dans 70 pays, elle propose une large gamme de produits à des prix abordables, pour tous les niveaux et toutes les disciplines. Son objectif est de rendre le plaisir et les bienfaits du sport accessibles au plus grand nombre.
Coach en binôme avec Julien Topçu pour un accompagnement Domain Driven Design, sur la refonte du système de caisse
- Accompagnement DDD Stratégique via un EventStorming
- Accompagnement DDD Tactique par une immersion ponctuelle dans l’équipe
- Mise en place d’une Architecture Hexagonale et des pratiques de programmation associées
- Mise en place des domaines identifiés lors de la partie stratégique
- Montée en compétence de l’équipe par des présentations, quotidiennes
- Acculturation au TDD par l’exemple
Buzzwords :
COACHING, DDD, SOFTWARE CRAFTSMANSHIP, CLEAN CODE, TDD, MOB-PROGRAMMING, FORMATION, ANIMATION, FACILITATION
MAISONS DU MONDE
¶
🗓️ Depuis septembre 2021
👤 Développeur. Coach Agile Technique.
Maisons du Monde est une enseigne de distribution, d'ameublement et de décoration française La DSI s'organise en différents domaines IT associés à leurs équivalents métiers de l'entreprise, comme la « Supply Chain Management », domaine IT dans lequel s'est déroulé cette mission.
🗓️ Depuis février 2023
👤 À plein temps en tant que « Soutien Technique Supply » sur plusieurs équipes (Animation d'équipe et Coaching
technique)
- Accompagnement individuel des internes : coaching individuel et montée en compétence
- Animation de l’équipe technique « Supply »
- Animation d’un point d’équipe technique régulier qui regroupe les trois équipes du domaine Supply
- Suivi du parc applicatif du domaine par des métriques co-construites
- Construction d’un catalogue de pratiques d’équipe (Craft, Communication, IA et bien d’autres)
- Accompagnement de la transmission de connaissance de l’équipe « APPRO » qui quitte le domaine de la Supply au cours de
l’été 2023
- Matrice des connaissances
- Pair et Mob-Programming avec les équipiers du domaine cible
- Lead développeur sur des projets critiques à forte valeur ajoutée
- Janvier 2024 « Traçabilité » avec l’équipe Stock
- Avril 2024 « Seconde Chance » en Task-Force de l'Équipe TRP
🗓️ Entre avril 2022 et février 2023
👤 À mi-temps en tant que « Soutien Technique Supply »
👤 À mi-temps en renfort de réalisation dans les équipes « APPRO » et « TRP »
- Animation d'ateliers d'Event Storming
- sur le processus d’Alerting (équipe TRP)
- sur le processus de Booking (équipe APPRO)
- sur le processus de la Commande Fournisseur (plusieurs équipes dont APPRO)
- Initiation du service aux pratiques Craft
- Présentations régulières (TDD, Clean Code, Pair-programming)
- Mise en place de Mob-Programming sur des sujets de refactor et de partage de connaissance
- Animation de Coding Dojos, et d'atelier de travail sur le Pair-Programming, et Mob-Programming
- Animation de Serious Games
🗓️ Entre septembre 2021 et avril 2022
👤 Développeur dans l'équipe « TRP »
- Industrialisation de la mise à jour du paramétrage du « MET » (Moteur d'Éligibilité Transporteur)
- Evolution des outils permettant de saisir le paramétrage
- Automatisation de test sur le MET
- Bootstrap de tests applicatifs automatisés utilisant Cucumber comme glue
- Exécution d'un pipeline GitLab orchestrant les tests
- Intégration l'exécution avec le plugin XRay de JIRA
Buzzwords :
JAVA, JUNIT, MOCKITO, CUCUMBER, JAVASCRIPT (REACT, JEST), SPRING, GIT, SOFTWARE CRAFTSMANSHIP, CLEAN CODE, TDD, PAIR-PROGRAMMING (& MOB), DOCKER, GITLAB, KUBERNETES, GCP, FORMATION, ANIMATION, FACILITATION
E-VOYAGEURS TECHNOLOGIES
¶
🗓️ décembre 2018 ➡ septembre 2021
👤 Développeur Java, Senior, puis Lead.
👤 Animateur de communauté
E-Voyageur technologies est l'usine numérique derrière e-Voyageurs SNCF. Ce pôle technologique d'environ 1000 personnes, est responsable du site oui.sncf, mais également des application « Assistant SNCF », « TGV Pro », et d'autres briques technologies de la SNCF.
🗓️ avril 2019 ➡ septembre 2021
👤 En parallèle des projets IT, animateur en transverse dans la communauté de pratiques du « Cercle du
Développement »
- Création du « parcours d'accueil des développeurs », avec les RH en charge de la formation
- Initiation des ateliers « Conception de formation » : TDD, CleanCode, SOLID, « Apprendre à Apprendre : comment faire sa veille technologique »
- Initiation des ateliers de partage :
- Xtrem(Reading | Watching | Sharing | TechWatch)
- GoodMorningLearning
- Animation de Coding Dojos, et d'atelier de travail sur le Pair-Programming, et Mob-Programming
- Animation de Serious Games :
- « Qu'est-ce qu'un TU »,
- « Pair-Programming : le comprendre sans coder »
- Impliqué dans la redéfinition des rôles de la CoreTeam, et des objectifs de la structure
🗓️ novembre 2020 ➡ septembre 2021
👤 Développeur senior dans l'équipe « Innovation », en charge d'accélérer les expériences de la cellule «
Innovation » de la branche « Produit » de l'entreprise
Principales réalisations :
-
Mesure de l'affluence dans les trains
- Back : Typescript + AWS Lambda
- Front : Ionic sur AWS CloudFront
- CI/CD via GitLab CI + AWS CLI
- TDD + Formation de l'équipe
-
Carbon Tracker : votre coach de mobilités carbone
- Back : Typecript + AWS Lambda
- Front : Flutter + Dart
- Formation de l'équipe à la gamification
🗓️ décembre 2019 ➡ novembre 2020
👤 Développeur senior dans une équipe de seniors, en charge de motoriser la personnalisation des applications
e-Voyageurs Technologies, notamment via du Machine Learning.
Sur la partie « Cross-Sell » sur le site de oui.sncf :
-
Back en Reactive Spring
- Java 8, 11, puis 13
- AWS ElasticBeanStalk
- Tests de l'application en Gherkins, sur un composant « BlackBox »
- Mise en place de JaCoCo sur un projet Maven en multimodules
-
Moteur de personnalisation :
- Batch en Python + PySpark
- Captation des données via la « feedback-loop »
- Utilisation d'un modèle de ML paramétré par l'équipe
- Alimentation d'un Elasticsearch
-
Initiation de l'équipe aux pratiques Craft
- Présentations régulières (TDD, Clean Code, Pair-programming)
- Mise en place de Mob-Programming sur des sujets de refactor et de partage de connaissance
Lors de l'intégration de la solution « Kameleoon » pour comparer avec nos propres briques
-
Intégration de la solution « Kameleoon » pour tester sa pertinence
- Contribution transverse sur toutes les briques Front du site oui.sncf
- Mise en place de bonnes pratiques de contribution (collaboration avec équipe hôte, pair-programming, respect des conventions de l'équipe hôte, post-mortem systématiques)
- Stacks hétérogènes : Angular, React, Vue
-
Participation au développement du moteur de recommandation transverse
- Testing / TDD
- Moteur de scoring par règles métier,
- Tests de charge du moteur par Gatling
- Utilisation de différents modèles de Machine Learning pour répondre à des contextes différents
- Mise en place d'un bus RxJS pour synchroniser les Front, tests avec des MarbleTests
Lors de la modélisation des modèles de machine Learning
- Mise en place des tests de workflow (AWS Glue) de traitement de la donnée
- Mise à jour de modèle de Machine Learning via AWS Sagemaker
Buzzwords :
Java, JUnit, Mockito, Cucumber, Gatling, JavaScript, Typescript (REACT, JEST), MongoDB, Spring, Python, Dart, Flutter, Git, Software Craftsmanship, Clean Code, TDD, Pair-Programming (& MOB), Docker, Jenkins, AWS, Formation, Animation, Facilitation
AROLLA
¶
🗓️ juin 2016 ➡ décembre 2018
👤 Développeur Java, Senior, puis Lead.
👤 Formateur
Arolla est une ESN spécialisée dans le software craft. C'est une référence historique du paysage Craft en France et est reconnue pour son expertise dans le développement logiciel métier et son approche agile. L'entreprise accompagne ses clients dans la conception, le développement et l'évolution d'applications critiques pour leur activité, en mettant l'accent sur la qualité du code, la satisfaction client et l'innovation.
La Combe du Lion Vert
¶
🗓️ mai 2018 ➡ septembre 2018
👤 Formateur
La Combe du Lion Vert est une filiale d'Arolla, qui offre aux développeurs en début de carrière un cursus de formation sur les pratiques du Software Craftsmanship, avant de les envoyer chez les clients.
Formateur à la demande du CTO, sur des sessions ponctuelles
- Formation CleanCode et SOLID
- Formations Tests Doubles, et Double Loop TDD
Buzzwords :
Java, POO, SOFTWARE CRAFTSMANSHIP, Clean code, SOLID, TDD, FORMATION, COACHING
VIDAL
¶
🗓️ novembre 2017 ➡ décembre 2018
👤 Développeur « Fullstack »
VIDAL est l'entreprise éditant le « Dictionnaire VIDAL », catalogue des produits et des médicaments, à destination des professionnels de santé.
Intervention dans le cadre de plusieurs projets, portant sur différentes étapes du cycle de la génération du dictionnaire de santé VIDAL.
Dans une équipe de 5 personnes tournantes, nous avons travaillé sur les projets suivants :
-
Enrichissement des contrôles de Posologie HAS :
- Scenarii BDD (Prescription, Saisie du référentiel),
- Montée de version AngularJS (1.2 vers 1.5) et introduction de composants
- Full Pair-Programming, TDD
-
Souscription & Nouvelle Facturation :
- Numérisation de l'envoi du dossier,
- Génération des données de facturation
- Prise en charge du rôle de Scrum Master (Facilitation des ateliers suivants : Rétrospective, Backlog refinement, Définition du DoD, Définition du DoR)
-
Reprise des posologies :
- 80 Go de données
- Mise en place d'un job Spark et d'un cluster « ad hoc »
-
Circuit du médicament :
- Création d'une application « from scratch »
- Java 11, Angular 6, MongoDB
- TDD, Pair-Programming, et Code Reviews
- Sensibilisation transverse aux pratiques crafts (présentation, et ateliers de mise en pratique de TDD et Pair-Programming)
Buzzwords :
Java, JUnit, Mockito, Cucumber, JavaScript (AngularJS, Jasmine), MongoDB, Spring, Hibernate, Git, SOFTWARE CRAFTSMANSHIP, Clean code, TDD, Pair-Programming, ANIMATION, FACILITATION
DARTY
¶
🗓️ juin 2016 ➡ novembre 2017
👤 Développeur JAVA JEE
Darty.com, le site internet de vente en ligne de Darty, correspond au premier magasin du groupe en termes de chiffre d'affaires, totalisant 14% des ventes de produits. Depuis 2014, Darty.com intègre également la plateforme Mistergooddeal.
Ces sites permettent à tout internaute de consulter un large catalogue de produits, pour ensuite les acheter en ligne, et bénéficier des mêmes avantages que lors d'un achat en magasin (livraison, installation, etc.).
Intervention dans le cadre d'un projet d'amélioration continue, sur un large panel d'applications, aux stacks diversifiées, et de qualité hétérogène.
Au sein d'un projet d'une vingtaine de personnes, je suis intervenu sur les applications suivantes :
- Les applications dites du "Back "
- Darty WebSphère : monolithe très endetté, concentrant les workflows et les dépendances externes historiques
- Order Management System (OMS) : orchestrateur de micro-services dédiés au remplacement de WebSphère
- BO-DCom : Back Office métier de Darty.com
- Les applications dites du "Front "
- Le "Front DCom " : Le site internet, en lui-même
- Le "Front MGD " : Le site Mistergooddeal.com
Ma contribution a essentiellement été valorisée sur les aspects suivants :
-
Working with Legacy
- Retrotesting et outillage pour générer des tests
- Conduite du changement sur une équipe peu sensible au Clean Code
-
Application des pratiques de Software Craftmanship
- TDD, Pair-Programming, et Code Reviews
- Amélioration des processus de merge du code
- Ateliers & Dojos, pour parler du code
-
Application de pratiques Agiles
- Introduction aux cérémonies Agiles auprès de l 'équipe (Daily)
- Rétrospectives de release (rétro bateau, rétro dont vous êtes le héros)
-
Force de proposition sur les workflows
- Introduction à la norme BPMN
- Emergence des workflows de paiement, et des commandes
Buzzwords :
JAVA, JAVASCRIPT (JQUERY, ANGULARJS), GUICE, DROPWIZARD, REST, JUNIT, MOCKITO, GIT, CLEAN CODE, TDD, PAIR-PROGRAMMING
OALIA
¶
🗓️ mars 2011 ➡ juin 2016
👤 Développeur Java JEE
Oalia est un éditeur spécialisé dans la production de solutions dédiées à l'optimisation du processus d'achats ( prestations intellectuelles, matériel, fournitures diverses). Il propose entre autre, une suite logicielle web (front to back), qui permet de gérer le workflow lié à toute commande.
Intervention continue dans le cadre du projet EXCELLENCE™, qui est la refonte du socle technique de la suite logicielle OALIA. Remplacement des composants Legacy (Turbine + Velocity) par une architecture MVC entièrement méta-modélisée, modulaire et administrable.
🗓️ mars 2014 ➡ juin 2016
👤 Lead Développeur, Référent Technique IAM
Au sein du même projet, en suivant la méthode Agile SCRUM ; intervention sur les tâches suivantes :
-
Outillage des tests :
- Développement de runners JUnit pour tests d'intégration
- Mise en place de Selenium-IDE, prélude à l'industrialisation de Selenium
-
Référent technique sur la couche applicative
- Formation des nouveaux arrivants
- Suivi des développements, relecture de code, support technique
-
Développements techniques :
- Mise en place du module de connexion par SSO
- Amélioration des API fluent interface orientées développeur
- Outillages des procédures de migration des différents modèles
- Amélioration des processus d'intégrations avec l'équipe GUI
-
Application de pratiques agiles basées sur SCRUM et XP :
- Sprints de 2 semaines avec livraisons toutes les 6 semaines. Suivi des cérémonies classiques (Planning, Stand-Up, Démo, Rétro).
- TDD et Pair-Programming (montée en compétences des nouveaux développeurs, développements de fonctionnalités critiques).
- Réflexions sur la mise en place d'une démarche Devops (automatisation de scripts de déploiement)
🗓️ septembre 2012 ➡ mars 2014
👤 Développeur confirmé : Mise en place de IAM (Interactive Application Model) qui modélise les processus métiers
OALIA, les écrans et le rendu
En suivant la méthodologie Agile SCRUM dans une équipe de trois développeurs, nous avons pu développer les briques logicielles, constituant le cœur d'IAM (Interactive Application Model) :
-
Modules complémentaires de l'UIOM
- Mise en place de nouveaux composants via TDD
- Création d'API de développements fluides et guidées (en suivant le pattern fluent interface), permettant un gain de productivité, et un raccourcissement du temps de prise en main
- Modélisation des composants graphiques
- Intégration des modèles à un « Studio » disponible sur l'application, permettant d'administrer les modèles de composants
-
Enrichissement du modèle de navigation
-
Développement de la couche de modélisation des processus métier
- Développement en TDD d'API de développements fluides et guidées
- Mise en place d'une couche de validation des modèles de processus, conformément au standard BPMN
-
Développements fonctionnels permettant le portage iso-fonctionnel de modules métiers, depuis la technologie obsolète vers le nouveau modèle.
-
Application de pratiques agiles basées sur SCRUM et XP :
- Sprints de 2 semaines avec livraisons toutes les 6 semaines. Suivi des cérémonies classiques (Planning, Stand-Up, Démo, Rétro).
- TDD et Pair-Programming (montée en compétences des nouveaux développeurs, développements de fonctionnalités critiques).
🗓️ septembre 2011 ➡ septembre 2012
👤 _Développeur junior : Montée en compétence & stabilisation d'un legacy important en vue de préparer le fork vers la
nouvelle architecture
Travail en équipe sur la stabilisation du socle technique fortement endetté :
- TMA sur l'ensemble de la suite logicielle
- Mise en place d'une démarche TDD
- Montée en compétences sur les Design Patterns
Cette amélioration indispensable du socle technique a permis, par la suite, de procéder à un fork entre deux applications ; l'une conservant une dette technique importante, l'autre étant le sujet du nouveau moteur applicatif.
🗓️ mars 2011 ➡ septembre 2011
👤 Développeur junior : Développement de l'UIOM (User Interface Object Model) qui est la couche de rendu de la nouvelle
architecture OALIA
Elaboration de l'UIOM (User Interface Object Model) : un moteur de rendu HTML en Java, venant s'intégrer avec le méta-modèle métier de l'application. Ce moteur constitue la première brique de la refonte du socle technique.
- Développement en TDD du rendu HTML, en restant fidèle et rétrocompatible au rendu de la version legacy
- Programmation par composants (AOP)
- Automatisation de l'intégration des travaux de l'équipe GUI
- Intégration au méta-modèle métier de l'application
Buzzwords :
JAVA 7, JAVA-EE, JAVASCRIPT (JQUERY), SPRING (CORE, MVC), HIBERNATE (JPA), POSTRESQL, JUNIT, EASYMOCK, POWERMOCK, SELENIUM, GIT, DESIGN PATTERNS, CLEAN CODE, TDD, PAIR-PROGRAMMING, SCRUM & XP
Formations¶
- 2011 Diplôme d'ingénieur des Mines -- Douai
Training & Conferences suivis¶
- Conférence NCraft (2018, 2019, 2022, 2023, 2024)
- Formation Domain Driven Design - Shodo 2023 (Julien Topçu et Josian Chevalier)
- Formation « Process Communication Model » - Le Pas d’après 2023
- Conférence « Devoxx » (2023, speaker)
- Conférence « Devfest » (2021, 2022, 2023, dont un talk en 2022)
- Conférence « Agile Tour Nantes » - 2021
- Formation « Architecting on AWS » - Revolve 2021
- Formation Flutter - Zenika 2021
- Formation Sfeir School Speaker - Sfeir 2020
- Formation Les bases du Machine Learning - e-Voyageur Technologies 2019
- Formation en ligne Sketchnoting - Bloculus (2019)
- Formation Refactoring - Arolla 2017
- Formation Domain Driven Design - Arolla 2017