Rapport du projet PFA : Plateforme de recrutement
Encadré par : Madame ALAOUI KHADIJA
Réalisé par : ABBASSI ZAID, BEN AKKI YASSINE
May 23, 2025
Aperçu sur le projet
Notre projet consiste à développer une application web de recrutement qui facilite et optimise
le processus de mise en relation entre recruteurs et candidats.
La plateforme permet aux recruteurs de publier des offres d’emploi et aux candidats de
postuler en ligne. Grâce à une intelligence artificielle intégrée, chaque candidature est
automatiquement analysée et évaluée en fonction de sa pertinence par rapport à l’offre
concernée, ce qui permet aux recruteurs de mieux identifier les profils adaptés.
Les utilisateurs peuvent créer un compte, gérer leur profil, postuler à des offres, ou publier des
annonces selon leur rôle. Un système de messagerie interne permet la communication directe
entre les deux parties.
L’architecture du projet suit une approche microservices, développée en Java (Spring Boot)
pour le backend et Angular (TypeScript) pour le frontend.
Ce projet vise donc à moderniser le processus de recrutement en offrant une plateforme
intelligente, interactive et évolutive, adaptée aux besoins des entreprises et des chercheurs
d’emploi.
Méthode choisie, avec justification du choix
La méthode choisie est Scrum, un cadre agile. Cette méthode est adaptée car :
• Complexité et incertitude : notre projet comprend plusieurs services interconnectés et une
composante IA. Scrum permet de travailler par étapes courtes (sprints), avec des ajustements
réguliers en fonction des retours.
• Collaboration : la méthode encourage une bonne communication entre les membres de
l'équipe et permet de valider les choix fonctionnels et techniques progressivement.
• Livraison progressive : chaque sprint permet de livrer une version partielle mais
fonctionnelle du projet, comme le module de création de profil ou le système de
messagerie.
• Adaptabilité : si de nouvelles idées ou des modifications apparaissent (par exemple, un
nouveau critère pour le matching), elles peuvent être intégrées facilement dans les
sprints suivants.
1
Livrables liés à cette méthode
• Product Backlog : Liste priorisée des fonctionnalités (ex. : création de profil utilisateur,
matching AI, notifications) établie avec les parties prenantes.
• Sprint Backlog : Plan détaillé pour chaque sprint (ex. : 2 semaines) incluant des tâches
comme le développement du service de messagerie ou l’intégration des analyses.
• Incréments fonctionnels : Versions livrables à la fin de chaque sprint, comme une inter-
face de candidature fonctionnelle ou un prototype de matching AI.
• Burndown Charts : Graphiques de suivi de l’avancement des tâches par sprint.
• Retrospectives : Rapports d’amélioration à l’issue de chaque sprint pour ajuster les pro-
cessus.
• Documentation finale : Manuel utilisateur et guide technique à la fin du projet, intégrant
toutes les fonctionnalités développées.
Organisation des sprint :
Phase Livrables
Sprint 0
• Choix des technologies backend (Spring Boot), frontend (Angular), base de
données (MySQL)
• Conception de l’architecture globale (microservices + communication via
REST)
• Diagramme de classes des entités principales
• Découpage initial des microservices
Sprints 1
• Développement du User Service : gestion des rôles, authentification,
inscriptionJobOffer Service (CRUD offres, recherche)
• Création d'une maquette UI (interface Angular) des principales pages (accueil,
login, dashboard)
Sprints 2
• Développement du JobOffer/ Application / Resume/AI Matching Service
(CRUD + recherche)
• Intégration de ce service avec le frontend Angular
• Test utilisateur de l’interface et retours sur l’ergonomie
Sprints 3
• Messagerie + Notifications
• Analytics Dashboard (stats de base)
2
Revue Finale
• Tests d’intégration + démo client
• Documentation technique et utilisateur
Table 1: Planification des livrables par sprint
Conclusion
Le développement de cette plateforme de recrutement nous a permis de mettre en œuvre une
architecture distribuée moderne, tout en appliquant une méthode agile adaptée à la gestion
d’un projet complexe. Chaque microservice a été conçu, testé et intégré de manière
incrémentale, ce qui nous a offert une grande souplesse dans l’évolution des fonctionnalités.
Au-delà de l’aspect technique, ce projet nous a également permis de renforcer notre capacité
à travailler en équipe, à organiser le développement autour de livrables concrets, et à tenir
compte des retours pour affiner la solution. L’intégration de l’intelligence artificielle, bien
que progressive, a constitué un véritable enjeu de réflexion sur l’optimisation des
candidatures.
Les étapes à venir viseront principalement à stabiliser l’application, améliorer l’expérience
utilisateur, et déployer la solution dans un environnement de test réel pour en valider
l’efficacité. Cette plateforme, par sa modularité et son approche centrée utilisateur, ouvre la
voie à de futures extensions, tant techniques que fonctionnelles.