🌱 Spring Boot
📌 Définition
Spring Boot est un framework Java open source qui permet de créer rapidement des applications web robustes, testables et prêtes pour la production, sans configuration complexe. Il repose sur l’écosystème Spring et propose un socle puissant pour construire des API REST, gérer les bases de données via JPA, sécuriser les endpoints ou orchestrer les services métier. C’est un outil très utilisé dans les grandes entreprises.
📂 Mes éléments de preuve
Projet collaboratif – Application de gestion de tâches
Dans ce projet fullstack réalisé en équipe, j’ai participé activement à la création du backend Spring Boot. J’ai développé les entités JPA, les contrôleurs REST et les services métiers pour la gestion des utilisateurs, des projets et des tâches. J’ai également mis en place les tests automatisés et la couverture avec JaCoCo. Ce travail m’a permis de mieux comprendre la structuration en couches (controller/service/repository) et les bonnes pratiques de développement d’API REST.
Challenge technique – API des bénéficiaires effectifs
J’ai développé une API Spring Boot en autonomie dans le cadre d’un challenge technique. L’objectif était de déterminer les bénéficiaires effectifs d’une entreprise en fonction des participations directes et indirectes. J’ai conçu un modèle de données simple en mémoire, implémenté une logique récursive et structuré l’application selon les principes de la Clean Architecture. J’ai aussi rédigé des tests unitaires pour valider la logique métier.
🧠 Mon autocritique
Je maîtrise les bases de Spring Boot : création de contrôleurs REST, injection de dépendances, accès aux données avec Spring Data JPA,
validation, tests et configuration du projet. Je comprends les enjeux de la structuration en couches
et j’ai une première expérience avec les concepts d’architecture propre (Clean Architecture).
Je suis encore en phase de consolidation sur des aspects avancés comme la sécurité (Spring Security),
les transactions, la gestion des exceptions centralisées, ou l’optimisation des performances.
C’est une compétence clé que je souhaite continuer à renforcer.
📈 Mon évolution dans cette compétence
À moyen terme, je souhaite approfondir :
- La sécurisation des API avec Spring Security (JWT, rôles, authentification)
- La persistance avancée avec JPA et les requêtes personnalisées
- L’exposition de données via OpenAPI / Swagger