
Jérémy Gallet
Senior Développeur Java | Spring Boot
Salaire / Taux journalier
Paris, France
Freelance
Peut venir sur site
Expertises
Langues
À propos
Introduction
Développeur Java Senior avec 18+ ans d'expertise en Spring/Quarkus et clean code. Spécialisé en architectures microservices, API REST et applications haute volumétrie (1M appels/jour). Expert en optimisation native (GraalVM), sécurisation SSL/TLS et tests automatisés avec couverture >80%.
Expérience de travail
Développeur back-end
RATP Smart SystemsFreelance
avr. 2024 - Présent
2 ans 7 mois
33700 Mérignac, France
Projet de gestion de flux métier pour le traitement de données commerciales et techniques Au sein d’une équipe agile d’une quinzaine de personnes dont 7 développeurs, j’ai travaillé sur une architecture hexagonale avec mise en place de traitements backend avancés sous Quarkus, intégration native et forte sécurisation des flux : Composants : - Backend (REST API, modules techniques et fonctionnels) - Traitement de données (conversion, validation, transformation) Tâches réalisées : - Backend Quarkus (Java 17) : - Mise en place d’une exécution native via GraalVM et Docker, configuration complète avec resource-config.json / reflection-config.json - Sécurisation SSL/TLS avec truststore custom, généré via keytool et injecté via variables d’environnement - Gestion de fichiers (MinIO et Amazon S3) - Appels GraphQL - Mise en place d’une base de données PostgreSQL - Intégration de bibliothèques externes - Traitements de flux : - Lecture et mapping de fichiers CSV/JSON via Apache Commons CSV et Jackson - Utilisation de Flyway pour la gestion des migrations de schéma - MapStruct pour le mapping DTO/Entity - Validation des payloads via annotations Jakarta JSON/POJO - Mise à jour de DCT avec transformation des flux - Connexion SFTP : - Utilisation des librairies JSch et SSHJ pour la connexion sécurisée et les transferts de fichiers via SSH/SFTP - Tests automatisés : - Tests d’intégration avec TestContainers (lancement d’image Docker minio) - Tests avec @SpringBootTest, @QuarkusTest et @WebMvcTest - Tests unitaires JUnit 5 - Surveillance & Sécurité : - Suivi applicatif avec Datadog et log4j2 - Intégration de OWASP Dependency Check dans GitLab CI - Outils & bonnes pratiques : - GitLab CI avec intégration continue - Méthodologie agile, revues de code, et documentation systématique - Application des principes clean code, relecture rigoureuse et couverture de tests élevée (>= 80%)
Développeur back-end
TotalEnergiesFreelance
nov. 2022 - mars 2024
1 an 5 mois
Projet de calcul de KPI/RQI (index de qualité de réservoir de pétrole/gaz) (Full-Remote) Contexte de l'équipe : - Équipe agile composée de 7 membres, dont 5 développeurs. Mes Contributions : Développement Back-End : - Application des principes de clean code. - Mise en place de tests unitaires et d'intégration. - Utilisation systématique de Pull Requests sur GitHub. - Réalisation de "Rebase" réguliers pour rester synchronisé avec l'avancée du code de l'équipe. - Mises à jour fréquentes des librairies utilisées. - Vérification du respect des règles SonarQube. Création d'une Application Multi-Modules : - Développement d'une application Spring Boot 3.1 from scratch. Expertise Technique : - Contribution à la couverture du code et à la rédaction des tests. - Prévention des régressions. - Encouragement à coder proprement (refactoring, simplification, nommage adéquat des variables et méthodes). - Maintien de la stabilité de la branche principale. - Importance accordée aux tests manuels et automatiques. Mise en place de : GitHub Action pour déclenchement auto d’analyse SonarQube GitHub Action pour déclenchement manuel de versionnement et déploiement (tag + release) automatique (Maven, GitHub Actions/App) Azure Blob Storage pour le stockage de données dans le cloud (+ TU/TI) Azure Functions (avec authentification OAuth2) Apache Airflow (avec authentification OAuth2) Environnements Techniques : - Langages/Frameworks : Java 17, Spring (Boot, Data JPA, Security, Actuator, Server-Sent Events...). - Outils/Technos : IntelliJ, REST - JSON, Postman, Apache Airflow (via DAGs Python), Azure Functions. - Bases de Données : MongoDB, Azure Blob Storage. Tests : - Utilisation de JUnit 5, TestNG, AssertJ, Mockito. - Flapdoodle Embedded MongoDB, TestContainers (pour la simulation d’Azure Blob Storage avec Azurite). Outils Agile : - Jira, Confluence, Microsoft Teams, Slack. Sécurité : - SonarQube (Security Hotspots, Security Vulnerabilities), Azure Key Vault.
Développeur back-end
Pôle emploiFreelance
mars 2021 - déc. 2022
1 an 10 mois
33170 Gradignan, France
Projet de gestion des demandeurs d’emploi Volumétrie d’appel de l’application : 40 appels/seconde soit 1 million d’appels/jour Au sein d’une équipe agile de 7 personnes dont 4 développeurs, j’ai réalisé en pair-programming systématique (points positifs => échange de points de vue/apprentissage mutuel) : - Migration Java 8 => Java 17 et Spring Boot 2.6.3 - Programmation réactive (Spring WebFlux) - Développement IHM via Thymeleaf - Comparaison de trames XML (XMLUnit) - Génération de code Java à partir de fichiers XSD (JAXB Generator) - Utilisation de moteur de template (MustacheJS/EJS) Mise en place de : - une Gateway via Spring Cloud Gateway - un générateur de code Client/Serveur avec “Open Api Specification” + Swagger 3 - une résilience via coupes-circuits (Resilience4j) - un Feature flipping (FF4J) - un Cron (Spring) - tests de performance (Gatling/K6) - tests d’API automatisés (Karate) - tests unitaires/intégration - tests d’architecture (ArchUnit) - un « Vault » pour stocker les URL, identifiants et mots de passe de manière sécurisée - un « Spring Cloud Config Server » pour récupérer les données du « Vault » pour les incorporer dans des fichiers de propriétés d’applications inhérents à chaque environnement - Montées de version fréquentes des librairies pour éviter les « Security Hotspots » détectés par SonarQube - Correction du code pour éviter les « Security Vulnerabilities » détectés par SonarQube - Détection/Correction des « Top Ten Owasp » via SonarQube - Supervision de production Thymeleaf Microservices PaaS Java 17 Spring Boot, Boot Actuator, Cloud Gateway, Cloud OpenFeign, Cloud Config Server, WebFlux, Data JPA, Security MapStruct Lombok Postman SGBD : Mongo, PostgreSQL, Redis, Oracle, DB2 Junit 5, AssertJ, Mockito, WireMock, base H2 ArchUnit Karate Gatling/K6 TDD GitLab Docker JFrog Concourse Amazon S3 Kibana Grafana Canopsis AppDynamics Jira Confluence Microsoft Teams Mattermost SonarQube Vault Spring Cloud Config Server
Développeur full stack
BNP Paribas Personal FinanceFreelance
août 2020 - mars 2021
8 mois
33700 Mérignac, France
Projet BNP Automobile : ESIV - Service d’immatriculation des véhicules pour BNP Paribas PF (Mérignac) Au sein d’une équipe d’une dizaine de personnes j’ai réalisé : - Mise en place de nouveaux écrans avec appels de service REST (75 %) - Création WS BACK pour requêter les données en base Elasticsearch et Postgres (25 %) En fil rouge au quotidien : soutien/aide/formation/encadrement junior Environnement : FRONT - Angular 8 - Material Design - Table (données, filtre, tri, pagination), liste en scroll infini - WS REST (Observable RxJs) BACK - Java 8 - Spring Boot 2, Cache, Data, Security, Cron - Maven - Tests unitaires Mock JUnit - Swagger Generator Bases de données : Elasticsearch + PostgreSQL Outils : - IntelliJ Ultimate - Docker (images PostgreSQL et Elasticsearch) - JHipster : génération table, entity, repository, controller, service, test + gestion historique via Liquibase - Postman - Microsoft Teams - Intégration continue : Jenkins, Sonar, GitLab
Développeur full stack
OrangeFreelance
juil. 2019 - juil. 2020
1 an 1 mois
33600 Pessac, France
Projet Scrum : SHINE 2 - Mise en relation d’entreprises partenaires avec des clients à travers l'application SHINE 2 d’Orange (plateforme type Marketplace) pour Orange DSI Au sein d'une équipe de 15 personnes, j’ai réalisé : - Analyse et correction d’anomalies - Rédaction de documentation - Participation aux cérémonies agiles : Sprint planning, grooming, daily, démo, rétrospective - Chiffrage, analyse et développement des user stories back-end et front-end - Réalisation de tests unitaires et d’intégration - Support technique et revue de code Environnement : - Java - JEE, Spring (IOC, AOP, Data JPA, Cloud, Boot) - Framework Hibernate - Base de données : MariaDB - API REST - Swagger generator (génération de code API serveur via document OpenAPI JSON/YAML) - Environnement microservices - Feign : client HTTP qui facilite l'appel des API exposées par d’autres microservices - Java SE 8 - Interface fonctionnelle : (Consumer, Supplier, Callable) - Lambda (groupement, sort, map, filter...) - Lancement de threads via Framework Executor - MapStruct : générateur de code qui simplifie l’implémentation du mapping d’objets - Gestion de configuration : GIT - Cycle de vie : Maven - Test : JUnit (unitaire), Cucumber (intégration) - Angular 5.2.0 - Mise en place de formulaires, composants, services, modules, routing - Mise en place d’Observables (RxJS) - Tests via test runner Karma et framework Jasmine Outils : - PaaS (plateforme en tant que service) Open Source : Cloud Foundry - Intégration continue : GitLab CI, SonarQube - Suivi des tickets : Jira - IDE : IntelliJ, Visual Studio Code - création de jobs pour extraction/modification de données : Talend (Extract Transform Load) - Application pour gestion SGBD : phpMyAdmin, HeidiSQL - Consultation de logs : Kibana - WS REST : développement/test via Postman
Concepteur développeur Node.js pour Orange
Sogeti
oct. 2018 - juil. 2019
10 mois
Région de Pessac, France
Projet Kanban : OIDC – Application d’authentification multi-protocoles * Modernisation du code source (ex : remplacement des callbacks par des promises, des prototypes par des classes via ECMAScript 6, utilisation des plugins ESLint et Prettier dans IntelliJ), mise en place d’un Swagger * Modification de l’architecture du projet en profondeur pour le rendre compatible multi-protocoles * Mise en place de tests via nodeunit / MochaJS * WS REST (développement via Postman) * Base de données : MongoDB * Corrections/Evolutions * Intégration continue : Jenkins, SonarQube Node.js, Express.js, ECMAScript 6, IntelliJ, Swagger, Git, Jenkins, MongoDB, MochaJs, nodeunit, WS REST avec Postman
NEO-SOFT Groupe
oct. 2016 - oct. 2018
2 ans 1 mois
Région de Bordeaux, France
Concepteur développeur Java - JEE pour Bordeaux Métropole Energies
mars 2017 - oct. 2018
1 an 8 mois
Région de Bordeaux, France
Conception – Développement – Tests chez le client Projet Scrum : Application de gestion de la facturation/compte client * Développements de nouveaux écrans + correctifs. * Travaux réalisés sur Front et Back * Front : Struts 2, JSP, jQuery, JavaScript, HTML5, CSS3, Bootstrap, Flexbox * Back : Java 8, Spring Data, Tomcat 7, WS REST (développement via Postman) * Travaux de migration : Toplink vers Spring Data / Java 6 vers Java 8 * Merges hebdomadaires * Intégration continue : Jenkins, SonarQube Java 8, Maven, TU, Mockito, TI, Jenkins, Sonar, SVN + TortoiseSVN, Eclipse Oxygen, Struts 2, JSP, jQuery, JavaScript, HTML5, CSS3, Bootstrap, Flexbox, WS REST avec Postman
Concepteur développeur Java - JEE pour Lectra
oct. 2016 - mars 2017
6 mois
33610 Cestas, France
Conception – Développement – Tests chez le client Projet Scrum : Application de gestion des collections * Au sein d’une équipe de 8 personnes * Reproduction de bugs et maintenance corrective, débogage d’applications * Travaux d’évolution sur l’architecture applicative déjà en place sur les aspects front (ExtJS, ReactJS) et back (Java 8) * Mise en place de l’environnement de développement * Serveur (WildFly 8, Node.js) * Grosse composante de rédaction + passage tests unitaires + tests intégration via framework TestNG + Mockito (répartition temps de développement : 30% implémentations/70% tests) * Rédaction de tests Selenium * Gestion de configuration : SVN via SmartSVN / GIT via GitLab * Travail collaboratif avec d’autres équipes et services * BDD : mapping objet-relationnel Hibernate / Consultation BDD via SQL Developer * Intégration continue : Jenkins, SonarQube Java 8, Hibernate, GIT, SVN, TestNG, Mockito, Selenium
Akka Technologies
avr. 2015 - oct. 2016
1 an 7 mois
33700 Mérignac, France
Concepteur développeur - Responsable BACK pour Ixxi Techside
mai 2016 - oct. 2016
6 mois
33700 Mérignac, France
Projet Scrum : Application Android/iOS de recherche d’itinéraires (Bus, Tram, RER, Train, Vélo, Piéton) * Evolutions / Corrections anomalies / déploiements /livraisons en Dev, Recette + TU / TI * Notifications push vers mobile, récupération/exploitation des flux GTFS (prochains passages, perturbations…) - General Transit Feed Specification (GTFS) * Développements Java EE sous Java 8 (Eclipse Neon) et Spring Boot (partie serveur) * Gestion de configuration : GIT (avec dépôt GitHub) * WS SOAP (développement via SoapUI) * Travail collaboratif en mode AGILE au sein d’une équipe de 7 développeurs (3 iOS, 3 Android et moi-même) avec dailyMeeting via Skype * Intégration continue : Jenkins, SonarQube Java 8, Eclipse, Spring Boot, GIT, WS SOAP avec SoapUI
Concepteur développeur Front/Back pour la Snecma
oct. 2015 - mai 2016
8 mois
33700 Mérignac, France
Projet Scrum : Simulation de l’Implémentation de la Mesure au Besoin Approprié (SIMBA) : application de gestion de données (suivi des essais de moteurs : demande, conception, réalisation et résultat) * Participation à la fin de la phase de réalisation de la V1 * Participation au début de la V2, le design des IHMS ayant été complètement modifié * Evolutions / Corrections anomalies * AngularJS version 1.5 / JAVA 8 / Service REST / EJB3 / Hibernate * Utilisation du Framework JavaScript jQuery 1.8.16, AngularGrid * Formation sur 3 jours à JBoss 6.4 * Développements Java EE (Eclipse Luna, JBoss 6.4, base Oracle) * Gestion de configuration : SVN * Travail collaboratif en mode AGILE au sein d’une équipe de 5 développeurs + scrum master + product Owner * Intégration continue : Jenkins, SonarQube AngularJS version 1.5, JAVA 8, Service REST, EJB3, Hibernate, jQuery, JBoss, SVN, Oracle
Concepteur développeur Java - JEE - Web Designer pour Casino Drive (à CDiscount Bordeaux)
avr. 2015 - oct. 2015
7 mois
Bordeaux, France
Projet Scrum : Site e-commerce casinodrive.fr * Refonte graphique complète du site (passage en Responsive Design : adaptations dynamiques des pages web en fonction du périphérique utilisé : smartphone, tablette ou PC/MAC via mediaQueries) * Corrections anomalies * Evolutions diverses sur Web-Service + TU * Participation à l’analyse du besoin (séance d’estimation/chiffrage) * Utilisation du Framework JavaScript jQuery * Echanges clients : validation du besoin, recueil d’information * Maquettage du design des pages web via WAMP * Tests de rendu iOS via Simulator de XCode sur MAC (émulateur iPhone, iPad) et Android via mobiletest.me * Développements Java EE (Eclipse, SAP NetWeaver, Java 1.4) * Gestion des styles CSS3 via fichiers LESS pour plus de modularité * Gestion de configuration : SAP pour la partie JAVA / GIT (avec dépôt BitBucket) pour le projet « maquette » * Travail collaboratif en mode AGILE au sein d’une équipe de 5 développeurs + scrum master + product owner * Mise en application du processus de livraison des versions * Mise en place d’un outil de benchmark (JMeter) : stress machine/analyse des statistiques * Enrichissement outil de partage de connaissance via Wiki * Intégration continue : GitLab CI, SonarQube jQuery, WAMP, Java EE (Eclipse, SAP NetWeaver, Java 1.4), HTML5, CSS3, Bootstrap, LESS, GIT, JMeter
Concepteur développeur Java - JEE pour le GIE Sesam Vitale
Gfi Informatique
oct. 2014 - mars 2015
6 mois
Le Mans, France
Projet cycle en V : Gestion de la production des cartes vitales * Corrections anomalies * Evolutions diverses * Mise en place Web-Service * Analyse du besoin – maintenance corrective, débogage d’applications * Travaux d’évolution sur l’architecture applicative déjà en place * Mise en place de l’environnement de développement * Développement Java EE (Eclipse, WebLogic, Java 6) * Mise en place de services WEB avec Apache CXF * Utilisation de file JMS et EJB3 * Gestion de configuration avec SVN + Maven 3 * Pattern MVC avec Struts 1 * Travail collaboratif avec d’autres équipes et services * BDD : Oracle JDBC * Consultation BDD via SQL Developer * Intégration continue : Jenkins, SonarQube Java 6, WS avec CXF, SVN, Maven 3, Struts 1, Oracle, SQL Developer
NEO-SOFT Groupe
janv. 2013 - mars 2014
1 an 3 mois
33610 Cestas, France
Concepteur développeur Java - JEE pour Lectra
juil. 2013 - mars 2014
9 mois
33610 Cestas, France
Projet Scrum : Application de gestion des collections Au sein d’une équipe de 10 à 20 personnes * Analyse du besoin – maintenance corrective, débogage d’applications * Travaux d’évolution sur l’architecture applicative déjà en place * Mise en place de l’environnement de développement * Développement Java EE (Eclipse, JBoss 7, Tomcat) * Grosse composante de rédaction + passage tests unitaires + tests intégration via framework TestNG + Mockito (répartition temps de développement : 30% implémentations/70 % tests) * Rédaction de tests Selenium * Gestion de configuration avec SVN * Travail collaboratif avec d’autres équipes et services * BDD : mapping objet-relationnel Hibernate / Consultation BDD via SQL Developer * Intégration continue : Jenkins, SonarQube Java, Eclipse, Jboss 7, Tomcat, testNG, Mockito, Selenium, SVN, Hibernate, SQL Developer
Concepteur Développeur Java - JEE pour JCDecaux
janv. 2013 - juil. 2013
7 mois
33185 Le Haillan, France
Projet cycle en V : Application de gestion du parc de panneaux publicitaires + stations vélo Au sein d’une équipe de 18 personnes * Analyse du besoin – maintenance corrective, débogage d’applications * Travaux d’évolution sur l’architecture applicative déjà en place * Mise en place de l’environnement de développement * Développement Java EE (IBM RAD7/8, IBM Websphere) * Présentation des IHM avec JSP, Struts et Tiles de Struts * Gestion de configuration avec SVN * Rédaction + passage Tests Unitaires * BDD : mapping objet-relationnel TopLink * Consultation BDD via SQL Developer * WS SOAP (développement via SoapUI) * Travail collaboratif avec d’autres équipes et services * Formation à l’outil Crystal Report * Intégration continue : Jenkins, SonarQube Java, JSP, WebSphere, Struts, SVN, TopLink, SQL Developer, WS SOAP avec SoapUI
Formation
Université Bordeaux1
Licence Professionnelle
2006 - 2007
2 ans
Université Bordeaux1
DUT Informatique
2004 - 2006
3 ans
Lycée Victor Louis
Baccalauréat
2000 - 2004
5 ans