
François-Xavier ROBIN
J’ai 49 ans et 26 d’expérience professionnelle en développement, en architecture et en interopérabilité de SI.
En tant qu’officier dans l’armée de Terre, à partir de 1998, j’ai été responsable des préconisations Java (pratiques, frameworks) mais aussi sur l’adoption de la SOA (Service-Oriented Architecture) et notamment de tout ce qui se rapportait aux pratiques liées aux WebServices, dès 2003, au profit du ministère des Armées. A la fin de ma carrière militaire, de 2011 à 2018, j’ai été responsable de la formation des développeurs du ministère, mais aussi formateur.
Avant de rejoindre Capgemini en septembre 2023, j’ai œuvré au sein d’une cellule d’API Management du Ministère des Armées pendant 3 ans. Pendant cette période j’ai rédigé un guide de bonnes pratiques pour la conception d’API REST et en développant des applications de démonstration de ces pratiques en Java avec Quarkus.
Mon domaine de prédilection concerne tout ce qui gravite autour de la plateforme Java mais aussi et surtout sur la qualité et la performance du code, raison pour laquelle j’ai rejoint une entité de Craftsmanship chez Capgemini. Elle est composée de Crafters identifiés du groupe. Ce sont des passionnés dont le but est de produire des applications non seulement fonctionnelles mais aussi, voire surtout, très bien conçues, avec des exigences de qualité très élevées, performantes et à l’état de l’art.
J’ai toujours été attiré par ce qui touchait l’intelligence artificielle sous toutes ses formes car dès 1996 je me suis intéressé aux réseaux de neurones, leurs applications et notamment aux algorithmes génétiques. C’est un domaine que je continue d’approfondir et de pratiquer.
Parcours professionnel
Managing Solution Archictect & Crafter
Depuis septembre 2023 : Capgemini, Lyon
Intégré à une équipe dédiée au Craftsmanship au profit de l’ensemble des projets du groupe.
- réalisation de PoC GenAI au profit du développeur (GitHub Copilot, Ollama, Continue, ChatBot Ollama)
- réalisation de PoC GenAI avec Retrieval Augmented Generation (RAG)
- réponse aux appels d’offres, chiffrages, propositions techniques
- speaker pour divers évenements
- organisation de Coding Dojos, création de Katas en Java
- création de PoC de Best Pratices avec Spring Boot 3 (Lombok, Testcontainers, AOP)
- migration et réfactorisation d’applications Java et de l’architecture associée
- création de PoC GraalVM Java Natif (Quarkus 3, Spring Boot 3)
Architecte, Techlead et développeur au profit d’une plateforme d’échanges liée aux transports
- Refonte d’une architecture Java 8/Spring 5 vers Java 21/Quarkus 3 en mode réactif
- Gestion technique d’une équipe de 5 developpeurs directs
- Elaborations de PoC divers (OpenIDConnect, Verrous Distribués)
- Définition de bonnes pratiques, aculturation de l’équipe de dev à ces partiques
API Manager
Depuis juillet 2020 : Ministère des Armées, DGNUM/CASID/SAND, Bruz
- analyses, conseils, validations d’API REST (OpenAPI 3, Swagger 2) auprès des directions d’application et MOE
- rédaction d’un guide de conception API, recueil de règles et bonnes pratiques REST
- réalisation d’une application Java Quarkus appliquant les règles du guide de conception API
- mise en place d’un site dédié à l’API Management avec TULEAP, présentant les procédures, les attendus, les ressources et les outils au profit des directions d’application et MOE
- réalisation d’outils pour l’automatisation de la validation et la comparaison fonctionnelle des API du ministère
TechLead
De mai 2018 à juin 2020 : APSIDE, Rennes
Au profit de l’ensemble des agences du groupe APSIDE :
- chiffrage de réponses aux appels d’offre
- expertise technique SI et notamment en Java EE et Interopérabilité (Services, Microservices)
- partage de la connaissance et référencement des compétences
- coaching technique de juniors et d’équipes projet
- définitions d’architectures techniques et de scénarios de migration
- audits techniques (qualité logicielle, architecture, sécurité applicative)
- speaker lors d’événements spécialisés « développements » : Breizhcamp (video), TNT, etc.
- renforcement d’équipes
Au profit spécifiquement de l’agence APSIDE de Rennes :
- animateur du “Laboratoire d’innovations techniques”
- animateur d’événements techniques
- responsable de la formation interne
- renforcement d’équipes
- entretien et validation techniques de candidats
- conseils techniques
Responsable de formations de développeurs
De janvier 2015 à avril 2018 : Ministère des Armées, ETRS, Cesson-Sévigné
- manager d’une équipe pédagogique de 10 formateurs et d’environ 100 stagiaires développeurs par an, pour des cursus de 7 mois ainsi que la formation des officiers chefs de projets pour des cursus de 11 mois
- garant des contenus pédagogiques et des formations en analyse, conduite de projet (UP/UML) et en base de données (SGBD, SGBDR, Décisionnel)
- mutualisation de la formation entre les différentes armées (Terre, Air, Marine)
- mise en œuvre d’une forge logicielle (Git/SVN, Nexus, Maven, Sonar)
- réalisation d’un jeu vidéo “old-school” pour l’apprentissage ludique du développement
- réalisation d’une application de questionnement de stagiaires pendant les séances (tablettes)
- réalisation de librairies accélérant le développement en JSF, JPA et Spring Security 4
- mise en œuvre d’une plateforme LMS fondée sur SAKAI pour l’enseignement à distance
- élaboration et rédaction d’un recueil de bonnes pratiques de développements sécurisés
Formateur Java EE et SOA
De juillet 2011 à janvier 2015 : Ministère des Armées, ETRS, Cesson-Sévigné
- formateur et responsable des contenus pédagogiques Java EE et SOA, Programmation Orientée Objets au profits des développeurs et chefs de projets du ministère
- chargé de mission modernisation de la formation (Tablettes et outils pédagogiques, …)
- refonte majeure des contenus pédagogiques de Java EE 5 à Java EE 7
- mise en place des VM Linux (Debian / XFCE) packagées avec de nombreux outils de DEV (Eclipse, GlassFish, SoapUI, MySQL, etc.) au profit des formateurs et stagiaires
Architecte technique Java EE et SOA
D’octobre 1998 à juillet 2011 : Ministère de la Défense, CPSIAT, région Parisienne.
- responsable technique des architectures logicielles et du développement Java pour l’armée de Terre, puis pour le Ministère de la Défense
- co-rédacteur de la directive technique du SI de l’armée de Terre pour la partie Java EE et SOA
- responsable technique pour la mise en œuvre d’outils liés à la SOA (UDDI, ESB, SOAP, REST,etc.)
- responsable de choix techniques pour un hébergement d’applications Java EE, mutualisé sur un Cloud privé VMWare au profit du MinDef
- animateur de la communauté Java du Ministère
- auditeur technique et de sécurité des SI majeurs de l’armée de Terre et du MinDef
- AMOE et AMOA sur plus de 30 projets du MinDef
Compétences Techniques
Langages
- Java
- 27 ans d’expérience depuis Java 1.1 (depuis fin 1996) à Java 21 (2024)
- Quarkus : depuis la version 1 (2019) à la version 3
- Spring : depuis la version 2 (2006) Spring IoC, Spring Security (depuis 2009), Spring Web, Spring Boot 3 (depuis 2023)
- Jakarta EE : depuis J2EE 1.2 à Jakarta EE 10
- Java FX 8 à 11, Jakarta Persistence (ex JPA), Jarkarta DI 2 (ex CDI), JSF 2 à 4
- Vert.X, JAX-RS, JAX-WS, Apache CXF
- Lombok, Apache Commons-*, Guava, LibGDX
- JUnit, Mockito, Rest-Assured
- JMeter, Selenium, Gatling
- Maven, Gradle
- GlassFish Payara, WildFly, Tomcat, TomEE
- Qualité du code : SonarLint/SonarQube, SpotBugs (FindBugs), Codacy, CodeFactor
- IDE : Eclipse, NetBeans, IntelliJ, GitPod, VSCode, Cursor.sh
- C/C++ :
- C depuis 1993, C++ depuis 1998 jusqu’à la version C++14
- Plateformes : Motorola 68000 (Atari ST), UNIX MainFrame, x86 (DOS4GW, Linux32/64, Windows), ARM32/64 (Raspberry)
- IDE : Eclipse, CodeBlocks, VSCode
- Assembleur :
- Motorola 6809, Motorola 68000, Intel x86
- Compilateurs : gcc, wasm, lwasm
- Divers :
- Python, PERL
- ADA, SAP, LUA
- LaTeX
Intelligence Artificielle
- intégration (et usage) de Github Copilot X
- prompt engineering
- ollama (+codellama +vicuna +mistral +zephyr)
- AWS CodeWhisperer
- VSCode Plugin CONTINUE
- LangChain
- Usage de Github Copilot & ChatGPT
Interopératibilité / API
- API REST, HATOEAS, WebServices SOAP
- YAML, JSON, XML, XSLT, XQuery
- OpenAPI 3, Swagger 2, XML-Schema
- SOA/ESB, UDDI, MicroServices
- Testing : curl, SoapUI, Citrus Framework, Bruno
- ESB : WSO2 (2.6 à 4), IBM Websphere ESB, Mule ESB, Aqualogic Service Bus
Securité / Authentification
- OWASP : WEB Top 10 / API Top 10
- OWASP Dependency-Check (Maven)
- Kali Linux : Metasploit-Framework
- Wireshark
- KeyCloak, OAuth2, OpenIDConnect
Web
- HTML5/CSS3
- JQuery, Bootstrap, Jeckyll
- Vue.js, Angular, React
- JavaScript, TypeScript
CI/CD
- Azure DevOps
- GitLab (worker), GitHub (+workflows), GitPod
- Docker, Kubernetes (initiation)
- Jenkins / SonarQube
- Nexus / JFrog Artifactory / Apache Archiva / Maven Central
Systèmes d’exploitations et virtualisation
- Linux, Debian
- Windows
- Scripting shell (bash), Ansible, Powershell
- CloudStack
- VMWare, VirtualBox
Bases de données
- BigData : REDIS, ElasticSearch, MongoDB
- RDBMS : MySQL, PostgreSQL, Oracle, SQLite, hsqldb
- BRMS : Drools