Comment fonctionne réellement le matching de candidats par AI : une approche à deux couches
Vous avez entendu le pitch des centaines de fois : “matching de candidats par AI.” Mais qu’est-ce que cela signifie réellement ? La plupart des outils vous donnent un pourcentage — “78% de correspondance” — et s’attendent à ce que vous leur fassiez confiance. Aucune preuve. Aucune explication. Aucun moyen de savoir si l’AI est brillante ou si elle hallucine.
Ce n’est pas du matching. C’est un nombre magique.
Le vrai matching de candidats nécessite deux choses : la rapidité et l’explicabilité. Vous devez évaluer plus de 20 candidats par jour sans passer 10 minutes sur chacun — mais vous devez aussi comprendre pourquoi un candidat a obtenu telle note, pour prendre des décisions éclairées et mener des conversations de screening pertinentes.
Voici comment une approche à deux couches résout les deux problèmes.
Le problème du matching à une seule couche
La plupart des systèmes de matching utilisent l’une de deux approches, et les deux ont des défauts fatals.
Mots-clés uniquement
L’approche la plus simple : extraire les mots-clés de la description de poste, vérifier s’ils apparaissent dans le profil du candidat. “React” dans le JD ? Chercher “React” dans le CV. Trouvé ? Point marqué.
Cela se brise rapidement :
- Les synonymes sont invisibles. Un candidat qui liste “React.js” ne correspondra pas à une recherche pour “ReactJS.”
- Le contexte est perdu. “5 ans de Python” dans le profil d’un candidat pourrait signifier 5 ans de scripting — pas 5 ans de construction de systèmes backend en production.
- La séniorité est une supposition. Les mots-clés ne peuvent pas dire si la trajectoire de carrière du candidat va dans la bonne direction.
- Les compétences transférables n’existent pas. Un ingénieur data Scala avec 6 ans d’expérience en systèmes distribués ne correspondra pas à “Python data engineer” — même s’il pourrait probablement faire le travail.
AI uniquement
L’approche opposée : envoyer le profil complet et la description de poste à un LLM, demander “dans quelle mesure cette personne correspond-elle ?” et analyser la réponse.
C’est meilleur pour les nuances — mais cela introduit de nouveaux problèmes :
- Le coût s’accumule. À $0.05-0.15 par évaluation et 20 candidats par jour, c’est $1-3 par jour juste pour le matching.
- La latence est notable. Une analyse AI complète prend 5-15 secondes.
- Excessif pour les incompatibilités évidentes. Si un JD exige 8+ ans d’expérience et le candidat en a 2, vous n’avez pas besoin d’AI.
- Incohérence. Posez la même question au même LLM deux fois, vous pourriez obtenir des scores différents.
La solution à deux couches
La réponse n’est pas de choisir entre mots-clés et AI. C’est d’utiliser les deux — dans le bon ordre.
Couche 1 : Matching déterministe (gratuit, instantané)
La première couche gère tout ce qui peut être évalué avec des règles et des comparaisons. Pas d’AI. Coût zéro. Résultats instantanés.
Ce que vérifie la Couche 1 :
Chevauchement de mots-clés. Extrait les compétences et technologies des exigences du JD. Vérifie chacune contre les données CV parsées du candidat. Calcule un pourcentage de chevauchement.
Années d’expérience. Le JD dit “5+ ans de développement backend.” Le CV du candidat montre que son premier rôle backend a commencé en 2021. Mathématiques simples : 5 ans. Vérifié.
Adéquation géographique. Le poste est “Berlin, hybride.” Le candidat est à “Munich, ouvert à la relocalisation.” La Couche 1 marque cela comme correspondance partielle.
Alignement salarial. Le budget est de €70-85k. L’attente du candidat est de €80k. Drapeau vert — dans la fourchette.
Exigences obligatoires. Le JD a 3 exigences obligatoires : React, TypeScript et 3+ ans. La Couche 1 vérifie chacune indépendamment avec un résultat binaire : passe/échoue.
Le résultat est une évaluation de base qui détecte les incompatibilités évidentes instantanément. Si un candidat échoue à 3 des 5 exigences obligatoires dans la Couche 1, vous n’avez probablement pas besoin de la Couche 2. Mais la Couche 1 connaît aussi ses limites — elle marque tout ce qu’elle ne peut pas évaluer comme “nécessite une revue AI.”
Couche 2 : Analyse de nuances AI (rapide, contextuelle)
La Couche 2 prend le relais là où les règles s’arrêtent et le jugement commence.
Analyse de trajectoire de carrière. Le candidat évolue-t-il dans la bonne direction ? Quelqu’un qui est passé de Junior Frontend → Mid Frontend → Senior Frontend → Lead Frontend est sur une trajectoire IC claire. Si le JD est pour un Staff Engineer, l’AI reconnaît quelle trajectoire est la meilleure.
Pertinence du domaine. Le JD est pour une entreprise fintech. Le candidat a passé 4 ans dans une startup de paiement. La Couche 1 ne capterait pas “payments” comme pertinent pour “fintech” — mais la Couche 2 comprend que les paiements sont un sous-domaine fintech.
Compétences transférables. Un candidat avec 6 ans d’expérience Scala et Apache Spark postule pour un poste “Python + PySpark.” La Couche 1 voit zéro chevauchement de mots-clés. La Couche 2 reconnaît que la transition Scala → Python est courante et relativement facile pour les ingénieurs data.
Identification des lacunes avec questions de screening. C’est là que la Couche 2 brille vraiment. Au lieu de simplement marquer “manquant : expérience Kubernetes,” elle génère une question clarificatrice : “Le CV du candidat ne mentionne pas Kubernetes, mais il a 3 ans d’expérience Docker et AWS ECS. Demandez : Avez-vous travaillé avec Kubernetes dans un quelconque contexte ?”
L’AI ne se contente pas de noter. Elle vous dit quoi demander ensuite.
À quoi ressemble la scorecard
Quand les deux couches sont terminées — typiquement en moins de 5 secondes — vous obtenez une scorecard structurée :
Évaluation globale
| Champ | Valeur |
|---|---|
| Score | 82 / 100 |
| Verdict | Forte correspondance |
| Recommandation | Procéder au screening de ce candidat |
Détail par exigence
| Exigence | Statut | Source | Preuve |
|---|---|---|---|
| React, 3+ ans | ✅ Vert | Couche 1 | ”React” trouvé dans 3 rôles, le plus ancien 2022 (4 ans) |
| TypeScript | ✅ Vert | Couche 1 | Listé dans les compétences, utilisé dans 2 rôles récents |
| Node.js backend | 🟡 Jaune | Couche 2 | Node.js non listé, mais Express.js dans un rôle |
| Domaine fintech | ✅ Vert | Couche 2 | 4 ans chez PayTech (startup de paiement) — forte pertinence fintech |
| Leadership d’équipe | 🟡 Jaune | Couche 2 | A dirigé une équipe de 2 personnes sur un projet, pas de rôle de leader formel |
| Kubernetes | 🔴 Rouge | Couche 1 | Non trouvé dans le CV. Expérience Docker + ECS présente |
Drapeaux
Drapeaux verts :
- Trajectoire frontend forte (Junior → Mid → Senior en 5 ans)
- Expérience domaine fintech alignée avec le poste
- Attente salariale (€78k) dans le budget (€70-85k)
Drapeaux jaunes :
- Expérience Node.js backend floue — nécessite screening
- Expérience de leadership informelle — clarifier les attentes
Drapeaux rouges :
- Kubernetes non mentionné — si c’est une exigence dure, peut être un bloqueur
Questions de screening
- “Votre CV montre une vaste expérience Docker et AWS ECS. Avez-vous eu une quelconque exposition à Kubernetes — au travail, dans des projets personnels ou via des certifications ?”
- “Je vois que vous avez dirigé une équipe de 2 personnes sur le projet de migration des paiements. Passer à un rôle de technical lead plus formel vous intéresse-t-il ?”
- “Vous avez Express.js listé dans votre rôle chez Acme Corp. Quelle proportion de travail backend Node.js faisiez-vous au quotidien par rapport au travail frontend React ?”
Pourquoi aucune couche ne fonctionne seule
| Scénario | Couche 1 seule | Couche 2 seule | Les deux couches |
|---|---|---|---|
| Mot-clé obligatoire manquant | ✅ Le détecte | ✅ Le détecte | ✅ Le détecte |
| Ingénieur Scala pour rôle Python | ❌ Pas de correspondance → rejeté | ✅ Reconnaît les compétences transférables | ✅ C1 signale la lacune, C2 ajoute la nuance |
| Candidat a 2 ans, JD en demande 5 | ✅ Maths simples | ✅ Mais plus lent et plus cher | ✅ C1 détecte instantanément |
| ”Startup de paiement” pour rôle fintech | ❌ Mots-clés ne correspondent pas | ✅ Comprend le domaine | ✅ C2 ajoute la pertinence du domaine |
| Coût par évaluation | $0.00 | $0.01-0.02 | $0.01 (C1 est gratuite) |
La Couche 1 est rapide, gratuite et fiable pour les vérifications structurées. La Couche 2 est nuancée, contextuelle et explique son raisonnement. Ensemble, elles produisent une scorecard à laquelle vous pouvez faire confiance et que vous pouvez utiliser.
L’avantage de l’explicabilité
Ce qui sépare un bon système de matching d’un générateur de nombres magiques : les preuves.
Chaque score dans la scorecard à deux couches est soutenu par une preuve spécifique du profil du candidat. “82/100” ne signifie pas que l’AI a “senti” que c’était un 82. Cela signifie :
- 5 des 6 exigences ont passé les vérifications de la Couche 1 ✅
- La Couche 2 a trouvé une forte pertinence de domaine (+points)
- La Couche 2 a identifié 2 lacunes nécessitant un screening (−points, mais récupérables)
- Salaire et localisation sont tous deux des drapeaux verts (+points)
Ce que cela signifie pour votre workflow
Avec le matching à deux couches, votre revue quotidienne de candidats change radicalement :
- Ouvrez votre pipeline — voyez 15 candidats assignés à un poste
- Parcourez les scores — 3 verts (85+), 7 jaunes (60-84), 5 rouges (moins de 60)
- Commencez par les verts — ouvrez la scorecard, parcourez les drapeaux
- Vérifiez les jaunes — la scorecard dit exactement ce qui manque et si c’est récupérable
- Passez les rouges avec confiance — la Couche 1 a détecté les incompatibilités dures
Ce qui prenait 5-15 minutes par candidat prend maintenant 30 secondes de revue de scorecard. Avec 20 candidats par jour, c’est plus de 2 heures économisées.
Vous voulez voir le matching à deux couches en action ? Essayez Inga CRM gratuitement — assignez un candidat à un poste et obtenez votre première scorecard en moins de 5 secondes.
Prêt à arrêter le copier-coller ?
Rejoignez les recruteurs qui économisent plus de 3 heures par jour grâce à un workflow alimenté par l'IA.
Essai gratuit