
Anass CHAARAOUI
Senior Backend Developer | Java, Spring Boot
Salaire / Taux journalier
Paris, France
Freelance
Peut venir sur site
Expertises
Langues
À propos
Introduction
Senior Backend Developer with 6+ years of expertise in Java microservices and cloud-native architectures. Led Kubernetes migrations, implemented event-driven systems with RabbitMQ, and successfully migrated enterprise apps from Java 11 to Java 21. Specialized in Spring Boot/Cloud, AWS deployment, and CI/CD automation—delivering scalable, high-performance solutions for global enterprises like Rakuten and Airbus.
Expérience de travail
Senior Software Engineer
Rakuten France
avr. 2025 - Présent
1 an 7 mois
Paris, France
• Pilotage de la conception, du développement et de la maintenance de microservices Java scalables avec Spring Boot, garantissant la fiabilité, la sécurité et les performances de systèmes critiques pour l’entreprise. • Définition et implémentation d’API RESTful au sein d’une architecture distribuée, en alignement avec l’évolution des besoins métier. • Pilotage de la migration d’un microservice en production vers Kubernetes à l’aide de Jkube, améliorant la scalabilité, la résilience et l’observabilité. • Conception et mise en œuvre d’une communication orientée événements via RabbitMQ, réduisant le couplage des systèmes et améliorant la coordination des services. • Réduction proactive de la dette technique et des vulnérabilités de sécurité grâce à la gestion des dépendances, au refactoring et à des initiatives d’amélioration continue. • Contribution à la stratégie CI/CD et à son automatisation avec Jenkins et GitHub Actions, permettant des déploiements fiables et repro‑ ductibles. • Promotion de l’excellence technique à travers les revues de code, le mentorat et le partage de connaissances. • Collaboration avec des équipes produit et métier pluridisciplinaires afin de livrer des solutions cloud‑native et scalables dans un environ‑ nement Agile/Scrum. • Technologies : Java, Spring Boot, Spring Cloud, Docker, Kubernetes, RabbitMQ, CI/CD, Jenkins, GitHub Actions, JUnit, Mockito, Hibernate, MariaDB, Oracle DB.
Senior Software Engineer
Enedis
juin 2024 - avr. 2025
11 mois
Paris, France
• Fournir un leadership technique et des orientations à l’équipe de développement, en veillant au respect des bonnes pratiques et des normes. • Effectuer des revues de code et mettre en place des processus d’assurance qualité pour garantir la qualité du code et un logiciel robuste. • Communiquer efficacement avec les parties prenantes pour fournir des mises à jour sur notre projet. • Déployé et optimisé Spring Cloud Circuit Breaker pour renforcer la tolérance aux pannes dans les architectures microservices, en réduisant les échecs en cascade et en améliorant la fiabilité du système global. • Exploité Spring WebFlux pour développer des API réactives avec une gestion efficace du parallélisme et des threads. Utilisé la programmation non bloquante pour améliorer les performances et gérer un grand nombre de requêtes concurrentes, réduisant ainsi les temps de latence. • Réalisé la migration des applications d’entreprise de Java 11 vers Java 21, en garantissant la compatibilité, en exploitant les nouvelles fonc‑ tionnalités (pattern matching, record types, virtual threads) et en optimisant les performances. • Migré des applications de Spring Boot 2.7 vers Spring Boot 3.2, en adaptant le code aux changements liés à Jakarta EE, en intégrant les nouvelles fonctionnalités d’observabilité et en minimisant les interruptions. • Réécriture et optimisation du code legacy pour alignement avec les API mises à jour et les fonctionnalités modernes, réduisant la dette tech‑ nique et améliorant la maintenabilité. • Mis à jour et testé les bibliothèques et pilotes de bases de données, assurant la compatibilité et la stabilité avec la pile modernisée. • Réalisé des tests approfondis post‑migration, identifié et résolu les goulets d’étranglement et renforcé la sécurité des applications. • Travaillé en étroite collaboration avec des équipes pluridisciplinaires pour valider les migrations dans des environnements de staging, preprod et de production, assurant un déploiement fluide. • Rédigé des guides techniques détaillés sur la migration et formé les membres de l’équipe aux meilleures pratiques associées aux nouvelles versions de Java et Spring. • Créer et maintenir la documentation technique, y compris les conceptions architecturales, et respect des règles de qualité. • Participation active aux cérémonies SAFe, développement de nouvelles fonctionnalités en garantissant la meilleure expérience utilisateur et web performance. • Technologies utilisées: Intellij idea, Maven, Docker, Jenkins, GitLab/Git, JUnit, Mockito, JIRA, Confluence, Java, Spring boot, Spring Cloud (Consul, Circuit Breaker), Spring webflux, Kafka, Hibernate, Checkmarx, SonarQube, Javadoc.
R&D Software Engineer
Airbus
févr. 2020 - juin 2024
4 ans 5 mois
Toulouse, France
• Fournir un leadership technique et des orientations à l’équipe de développement, en veillant au respect des bonnes pratiques et des normes. • Effectuer des revues de code et mettre en place des processus d’assurance qualité pour garantir la qualité du code et un logiciel robuste. • Encadrer et mentorer l’équipe, y compris les stagiaires, pour favoriser leur développement professionnel et l’acquisition de compétences. • Identifier et atténuer les risques potentiels dans les projets de développement logiciel. • Communiquer efficacement avec les parties prenantes pour fournir des mises à jour sur les projets et résoudre les problèmes. • Créer et maintenir la documentation technique, y compris les conceptions architecturales, et respect des règles de qualité. • Soutenu le déploiement et l’intégration de Solings, une solution adressant l’obsolescence des systèmes hérités, en assurant une connectivité fluide aux sources de données PLM existantes tout en activant des fonctionnalités modernes. • Participé à des ateliers de cadrage pour analyser et documenter les processus métiers existants, les exigences fonctionnelles et les contraintes techniques des systèmes hérités. • Aidé à adapter les fonctionnalités de Solings aux besoins spécifiques d’Airbus, incluant la personnalisation des interfaces utilisateur, des adap‑ tateurs de connectivité, et l’intégration des processus métiers. • Répondu aux défis de maintenance des systèmes hérités en exploitant la multi‑connectivité directe et l’application moderne basée sur le web de Solings, réduisant les risques durant les transitions. • Assuré la conformité aux normes de l’industrie, en protégeant l’intégrité des données et en soutenant les objectifs de transformation numérique d’Airbus grâce à l’approche innovante de Solings. • Participation active aux cérémonies SCRUM, développement de nouvelles fonctionnalités en garantissant la meilleure expérience utilisateur et web performance. • Développement des évolutions métiers et techniques propres au maintien des services. • Participation aux réflexions de l’équipe de développement en accord avec l’équipe d’architecture. • Technologies utilisées: Eclipse, Gradle, Docker, Jenkins, Kafka, Bitbucket/Git, JUnit, Mockito, JIRA, Confluence, Java, Spring boot, Hibernate, SonarQube, Javadoc, SAFe methodologie.
Formation
Mohammed V University in Rabat
Master's degree, Computer Software Engineering
2018 - 2020
2 ans 1 mois
Mohammed V University in Rabat
Licentiate degree, maths and IT
2016 - 2018
2 ans 1 mois
Université Ibn Zohr
General education degree - DEUG (Diplome d'Education Universitaire Generale), maths and IT
2013 - 2016
3 ans 1 mois
Licences et certifications
Grokking the Coding Interview: Patterns for Coding Questions
Délivré le : –
Manara-Certified Software Engineer
Délivré le : –
Cloud Application Developer 2019 - Mastery Award
Délivré le : –