Fil Rouge Civadis

Gestion Simplifié de recrutement  

Contexte 

Le but de l’application est de fournir à Civadis un logiciel de gestion simplifié du recrutement. 

Ce site se sépare en trois parties front-end, backend-utilisateur, backend-administrateur. 

La partie front end permet : 

La partie Backend Invité permet 

La partie backend administrateur permet 

Risques 

Cette application n’est pas une application critique (elle n’empêche pas Civadis de fonctionner en cas d’arrêt), mais c’est un cas typique d’application dont la qualité doit être élevée car : 

Il est donc essentiel pendant la formation et ce fil rouge de faire les tests suffisants pour éviter tous problèmes  

Parcours Utilisateurs 

Il y a trois parcours utilisateurs : 

Réalisation 

Le but de ce fil rouge n’est pas de refaire l’applicatif de recrutement en entier dans le cadre de la formation. 

Ci-après les objectifs plus ou moins atteignables lors de la formation : 

Objectif : Niveau 1 je pratique le Java et je suis à l’aise 

Être à l’aise avec Java est de pouvoir faire quelques classes, construire une application Web et mettre en place les éléments de qualité logiciel me garantissant que cela fonctionne. 

Je dois faire l’application suivante : 

Afin de pouvoir créer une offre, il est nécessaire de pouvoir encoder pour créer une offre (A titre d’exemple) : 

En termes d’architecture, il est proposé mais non imposé l’approche suivante : 

Ce que je dois comprendre est : 

Objectif : Niveau 2 je connais le Java et je suis plus qu’à l’aise 

Je suis assez à l’aise pour monter une architecture plus complexe et en faire une application Web. Je comprends que la mise en place des tests est une nécessité pour maintenir mon architecture Web stable. 

Je dois faire l’application suivante : 

 

La candidature d’une personne peut contenir à titre d’exemple : 

En termes d’architecture, il est proposé mais non imposé l’approche suivante : 

Afin de mettre en place la création d’utilisateur qui nécessite une validation d’email, il est possible d’utiliser les composants suivants : 

 

Ce que je dois comprendre : 

Objectif : Niveau 3 Le Java n’est pas le problème ici 

Je pense déjà au futur de cette application. J’ai compris comment monter une architecture très complexe, stable dans le temps et suffisamment performante pour accueillir plein de candidats. 

Je dois faire l’application suivante : 

Pour chacune des offres les candidats doivent passer deux épreuves, une première épreuve écrite et dans le cas où l’épreuve écrite est réussie, une épreuve orale.  

 

L’application doit permettre au gestionnaire RH de sélectionner à chaque étape les candidats retenus pour l’étape suivante. A chaque passage d’une étape à l’autre, les candidats non retenus doivent recevoir un mail et les autres candidats reçoivent un autre mail pour les inviter à l’étape suivante. Enfin pour chaque candidat avançant dans le process, il est possible d’envoyer un courriel à la personne de contact. 

Lorsqu’un candidat est retenu, le Job est dépublié automatiquement. 

Afin de mettre en place la fonctionnalité d’Upload de pièce d’un utilisateur, il est possible de s’inspirer de : 

 

Je comprends largement comment faire cette application. J’ai monté les tests unitaires et les tests fonctionnels. Ma couverture de code est bonne (70%), mes tests fonctionnels sont complets et je me prépare à monter des tests de performances et des tests de sécurité de base. 

 

Objectif : Je pratique de l’Angular 

 

Cet objectif est transverse aux objectifs Java. Le but ici est de monter un applicatif Angular avec PrimeNG afin : 

De façon non exhaustive et non obligatoire, il est possible de s’inspirer des sketch suivants fortement inspiré de : 

https://www.primefaces.org/primeng/showcase/#/dataview 

 

 

 

Une deuxième page permet d’afficher un job en détail : 

 

 

En fonction de l’état de l’utilisateur (connecté ou pas), il est possible de postuler à l’offre. 

 

L’interface backend RH permet pour chaque Job d’avoir la liste des candidats d’un job. 

 


Revision #1
Created 12 June 2022 12:18:56 by ggpilou2
Updated 12 June 2022 12:20:36 by ggpilou2