L’ESN Umanis recrute ses chargés de mission IT grâce au NLP
La R&D de l’ESN Umanis a mis au point un moteur de recommandation, afin de faciliter le choix du candidat idéal pour une mission IT donnée. Après quatre ans de développement et d’utilisation en interne, cet outil basé sur le NLP et le text mining devient un produit à part entière.
Si les technologies speech to text et text to speech ont un certain succès auprès du grand public, les cas d’usage débutent tout juste en entreprise. Les organisations sont plus directement intéressées par l’analyse de textes via les techniques de text mining, de NLU (compréhension du langage naturel) et de NLP (traitement du langage naturel). L’ESN Umanis, qui se spécialise dans ces techniques, les applique à sa propre activité. Depuis plus de quatre ans, la R&D d’Umanis développe TeamBuilder, outil RH pour trouver les profils de développeurs les plus à même de remplir une mission.
Cet outil est né du constat que les CVthèques qui disposent de moteurs de recherches ne permettent pas d’explorer « des compétences détaillées ». Or Umanis et la plupart de ses 3 000 collaborateurs interviennent dans des domaines extrêmement spécialisés, où la connaissance d’un outil IT spécifique est primordiale pour une mission donnée auprès d’un de ses clients.
« Nous essayons d’établir une correspondance entre les fiches de mission et les profils des collaborateurs. C’est un travail très important pour la direction commerciale. Nous leur facilitons la détection des bons profils pour une ou plusieurs missions », déclare Otman Manad, data scientist spécialiste du text mining et du machine learning (ML) chez Umanis.
TeamBuilder est pensé comme un moteur de recommandation de profils. Pour cela, il est doté de plusieurs composants : un moteur de recherche, de recommandation de CV, un moteur d’appariement temps réel entre les CV et les fiches de missions, des fonctionnalités de visualisation de données et de chiffrement et de pseudonymisation des curriculum vitae.
Une ontologie à la base d’un moteur de recommandation
L’outil est construit sur une architecture de microservices containerisés et automatisés à l’aide de Docker et Kubernetes. « Plusieurs services composent cette architecture. Un service sert au text mining, un autre est utilisé pour la visualisation des informations, les données résident dans une base de données NoSQL MongoDB, et un service de load balancing fait la liaison entre l’ensemble d’entre eux », précise Otman Manad. Récemment passée en version 2, cette architecture a été revue afin de faire de TeamBuilder « un produit réellement commercialisable, sécurisé et industriel », indique Patrice Darmon, directeur R&D chez Umanis. Les mises en production et les chargements périodiques des différents types de données sont complètement automatisés, selon le directeur.
Grâce à la reconnaissance d’entité nommée, TeamBuilder extrait les compétences citées dans les CV et les croise avec une base de données de compétences pour établir un score.
Pour cela, Team Builder est bâti sur un dictionnaire ontologique. Celui-ci est constitué par les experts métiers chez Umanis. Il s’agit d’une liste de plus de 1 000 mots-clés qui renvoie aux catégories de compétences et aux compétences recherchées. « Par exemple, nous pouvons rechercher un spécialiste de la data science avec des connaissances en machine learning, une maîtrise de la plateforme Dataiku, ou encore une maîtrise de Spark », détaille Otman Manad. « Il y a donc des compétences et des alias associés ». Une revue globale de cette ontologie a été effectuée au cours de cette année.
Ce dictionnaire est mis à jour tous les six mois afin de prendre en compte les compétences émergentes. « À ce moment-là nous faisons intervenir un expert métier qui décide de la note que l’on doit donner à cette compétence, “est-ce que cette compétence est critique ou non pour nos clients”, par exemple ». Ce sont différents critères qui permettent d’établir une hiérarchie des compétences au sein de l’ontologie.
L’ontologie est complétée par des informations sur le nom des entreprises et leurs alias cités dans les CV, les certifications obtenues auprès des éditeurs, les diplômes et les fonctions mentionnées.
Scores statiques, dynamiques et Fuzzy Logic
« Le NLP est à l’intersection de la linguistique et de l’intelligence artificielle. Il faut un sens de linguiste : le plus important, c’est de savoir comment interpréter et valoriser les résultats obtenus », indique Otman Manad. « Nous avons beaucoup de données, [mais] ce dont nous avons besoin, c’est du sens », renchérit-il.
Pour acquérir ce sens, un algorithme établit un score pour chacune des catégories et des compétences. Il est associé au service de visualisation afin d’établir une carte des talents d’un candidat à une prestation. Umanis utilise dans ce cas précis un diagramme radar (aussi connu sous les noms de toile d’araignée, polaire ou Kiviat).
Otman ManadData Scientist, Umanis
« Nous calculons plusieurs scores. Il y a un score statique, qui permet de noter les compétences des candidats. Nous faisons la somme des compétences mentionnées afin de connaître le domaine d’expertise d’un candidat. Dans ce cadre, nous prenons en compte la position des aptitudes mentionnées dans le CV, car nous savons que si un candidat indique une compétence dans le titre de ce document, il s’agit sûrement de sa spécialité », explique Otman Manad.
Dans le cadre du score statique lié aux capacités, il est non seulement fonction de leur position, mais aussi du nombre de fois où elles sont mentionnées. Comme l’a expliqué Otman Manad, les compétences sont notées par les experts métiers afin d’indiquer leur importance.
Un score radar est établi afin de positionner les capacités sur le diagramme radar au regard du domaine de compétences nécessaire pour une mission (par exemple, l’IA, le big data ou l’analytique). « Il s’agit d’une agrégation des différents scores statiques des compétences par domaine », précisent les chercheurs d’Umanis dans un document publié sur archives ouvertes. Ce radar est utilisé pour comparer les scores de différents profils par rapport à la fiche de mission.
Au moment d’une requête depuis l’interface homme-machine, un algorithme établit des scores dynamiques. Celui-ci doit effectuer une pondération des scores statiques afin d’afficher les profils les plus pertinents au regard des critères (compétences requises, optionnelles, secteur d’activités, etc.) nécessaires à l’accomplissement d’une mission. Umanis a ajouté un algorithme de logique floue (Fuzzy Logic) afin d’obtenir des résultats sur des requêtes moins précises, positives ou négatives. De la sorte un recruteur peut trier les candidats par domaine, avec une ou deux compétences associées, ou exclure des types de missions ou de compétences. Ce moteur a donné lieu à deux publications scientifiques acceptées dont une à la conférence internationale Big Data de Seattle à la fin de l’année 2018.
L’ensemble des modèles de scoring sont développés en Scala à des fins de « scalabilité et de performance », selon Patrice Darmon.
L’outil doit extraire les données de n’importe quel CV au format Word, PDF et JPEG (via OCR). En interne, Umanis a imposé un format « pour aider l’algorithme à effectuer de bonnes prédictions ».
TeamBuilder devient un produit Umanis
Il est également possible de charger des fiches de mission afin de réaliser un rapprochement automatique avec les scores statiques des CV stockés dans une collection de documents MongoDB. La même technologie sert à effectuer des prédictions des compétences attendues pour une fiche de mission donnée. L’on peut ensuite comparer un score de prédiction avec les compétences extraites d’un CV.
Patrice DarmonDirecteur R&D, Umanis
Cette fonctionnalité est désormais disponible depuis le CRM des commerciaux d’Umanis. « Lorsque qu’un commercial dépose une mission dans notre CRM, un nouveau bouton “rechercher CV” lui envoie par mail en moins d’une minute les 10 CV les mieux scorés par rapport à cette mission et un fichier XLS de synthèse sur ces CV », déclare Patrice Darmon.
« C’est un gain en temps et en efficience, pour un matching profil/mission qui prend en compte également la disponibilité du profil, la proximité géographique en plus de ses compétences et certification. De même, les managers de ressources reçoivent chaque matin par mail les missions issues de notre CRM qui correspondent le mieux à chaque membre de leur équipe, avec un fichier XLS de synthèse produit par TeamBuilder », ajoute-t-il.
L’objectif est de mesurer le taux d’intercontrat, la période de latence entre deux missions d’un salarié ou d’un intervenant. « C’est un indicateur clé pour une ESN, surtout au cours de la période actuelle liée au Covid », précise le directeur.
Attention, Team Builder est bien un outil : il ne s’agit pas d’attribuer automatiquement une mission à un candidat. Les ressources humaines s’en servent pour présélectionner les candidats qui passeront un entretien d’embauche à une mission. « Bien évidemment, la sélection finale se fait par un processus classique d’entretiens », rappelle Otman Manad.
Afin de respecter les obligations du RGPD, les données personnelles des candidats sont anonymisées et chiffrées via un algorithme cryptologique RSA. Seul le personnel d’Umanis avec le niveau d’autorisation nécessaire peut y accéder. Autrement, le service de génération de pseudonymes permet aux utilisateurs non habilités de manipuler les CV.
En interne, TeamBuilder est disponible pour les responsables, la force commerciale et les chargés de recrutements d’Umanis. Par ailleurs, un écosystème de 7 000 indépendants et de sous-traitants peuvent y accéder via la plateforme Web UmanisPartners.
L’ESN prévoit de mettre à disposition l’outil depuis sa page Web afin que les candidats puissent savoir rapidement si leur profil correspond à une offre d'emploi Umanis. « Nous sommes également en discussion avec quelques prospects », commente Patrice Darmon qui a en vue une phase de commercialisation.