Stage 2026
Stage — Gestion des entretiens professionnels
Application Symfony de dématérialisation des fiches d'entretien annuel : workflow de signatures, suivi RH, notifications, révision et export PDF.
Compétences mobilisées — Bloc 1
Support et mise à disposition de services informatiques
C1
Gérer le patrimoine informatique
- C1.1 Recenser et identifier les ressources numériques
- C1.3 Mettre en place et vérifier les niveaux d'habilitation associés à un service
- C1.6 Vérifier le respect des règles d'utilisation des ressources numériques
C2
Répondre aux incidents et aux demandes d'assistance et d'évolution
- C2.1 Collecter, suivre et orienter des demandes
- C2.3 Traiter des demandes concernant les applications
C3
Développer la présence en ligne de l'organisation
- C3.3 Participer a l'évolution d'un site Web exploitant les données de l'organisation
C4
Travailler en mode projet
- C4.1 Analyser les objectifs et les modalites d'organisation d'un projet
- C4.2 Planifier les activités
C5
Mettre a disposition des utilisateurs un service informatique
- C5.2 Déployer un service
C6
Organiser son développement professionnel
- C6.1 Mettre en place son environnement d'apprentissage personnel
Contexte
La Mairie des Andelys gerait le circuit des entretiens professionnels sur papier, avec des deplacements entre signataires et peu de tracabilite. Le projet vise a dematerialiser le cycle complet : saisie, verrouillage progressif, signatures, notification, demande de révision et archivage PDF.
Le besoin impose une gestion fine des roles (agent, evaluateur, RH, direction et autorite territoriale), des journaux d'audit et des règles de conservation compatibles avec un usage administratif.
Environnement technologique
PHP 8.3 Symfony 7 Doctrine ORM PostgreSQL 16 Twig Symfony Security Symfony Mailer DomPDF Docker Compose
Preuves
Captures et documents
obligatoireRoles : AGENT, EVALUATEUR, RH, ADMIN
Fiche -> signatures -> notification -> archivage PDF
Journal horodate des actions
Purge RGPD planifiee Détails techniques
Agent -> Evaluateur -> Agent -> N+2 -> N+3 -> DGS -> Maire
Chaque etape est debloquee après validation de la precedente. public function roleSignaturePour(FicheStatut $statut): ?string
{
return match ($statut) {
FicheStatut::SAISIE_EVALUATEUR => Signature::ROLE_EVALUATEUR,
FicheStatut::SIGNATURE_AGENT => Signature::ROLE_AGENT,
FicheStatut::VISA_N2 => Signature::ROLE_N2,
FicheStatut::VISA_N3 => Signature::ROLE_N3,
FicheStatut::VISA_DGS => Signature::ROLE_DGS,
FicheStatut::VISA_AUTORITE => Signature::ROLE_AUTORITE,
FicheStatut::NOTIFICATION => Signature::ROLE_NOTIFICATION,
default => null,
};
}