
Technologies utilisées
Java
Spring Boot
Spring Security
PostgreSQL
Redis
Next.js
Typescript
Docker
Flyway
Google Gemini
JUnit
Description du projet
Conception et développement intégral, en tant que seul développeur, d'une plateforme d'apprentissage en ligne pour IAT Academy, centre de formation proposant des cursus d'aviation et de tourisme sur deux ans (36 modules pédagogiques).
Backend d'envergure développé en Spring Boot 3 / Java avec architecture en couches sur PostgreSQL et Redis, comprenant 31 contrôleurs REST, 179 endpoints, 39 entités JPA et 45 migrations Flyway, validé par 151 tests automatisés.
Frontend Next.js 15 / TypeScript proposant deux espaces spécialisés : espace apprenant avec quiz interactifs chronométrés et espace direction avec gouvernance académique et statistiques.
- Contrôle strict côté serveur de la progression séquentielle empêchant tout contournement par manipulation d'URL.
- Sécurité renforcée : authentification JWT, validation 2FA et contrôle d'accès RBAC avec vérification de propriété des ressources.
- Génération de contenu pédagogique et assistance par IA avec bascule automatique (failover) entre fournisseurs.
- Délivrance de certificats numériques officiels avec QR Code vérifiable publiquement et partageables sur LinkedIn.
Dans les coulisses
Défis
- Garantir côté serveur qu'un apprenant suit réellement le parcours séquentiel, sans pouvoir sauter des modules via l'URL.
- Construire une IA résiliente qui ne tombe jamais en panne (génération de quiz).
- Tenir la charge : 39 entités JPA, 179 endpoints, 151 tests automatisés, 45 migrations sans réécriture après mise en production.
Compromis techniques
- Progression strictement séquentielle imposée côté serveur plutôt que côté interface, pour une vraie garantie pédagogique au prix de plus de logique métier.
- Bascule automatique (failover) de Gemini vers Grok pour la génération de quiz, plutôt qu'un seul fournisseur plus simple mais avec un point de défaillance unique.
- Les décisions critiques (validation finale du stage) restent exclusivement entre les mains du directeur académique : l'automatisation s'arrête volontairement là.
Ce que j'en retiens
- La partie la plus difficile de l'ed-tech n'est pas l'interface, c'est de garantir côté serveur qu'un apprenant suit vraiment le parcours, tout en sachant exactement quand repasser la main à un humain.
Détails & Aperçus
Screenshots



