Évaluation des compétences en programmation pour le recrutement
Choisissez une évaluation des compétences en programmation parmi 83 tests : 69 tests à choix multiples sur les langages, les frameworks et le cloud, et 14 exercices de programmation en algorithmique et en SQL.
La réponse courte
Les tests de compétences en programmation évaluent la maîtrise d'un langage, d'un framework, d'une bibliothèque de données ou d'une plateforme cloud, ainsi que la capacité à écrire du code fonctionnel. HireValid en propose 83 : 69 tests à choix multiples, qui durent pour la plupart 10 minutes, et 14 épreuves de programmation de 15 à 35 minutes. La majorité sont de niveau intermédiaire, avec deux tests de niveau débutant et six de niveau avancé. Pour un test SQL de recrutement, vous pouvez choisir parmi deux épreuves de programmation SQL.
83 tests · Page 2 sur 2
Programmation : tableaux
35 minutes · 1 exercice · Intermédiaire
Exercices de programmation
Voir le testDéveloppement logicielProgrammation : tables de hachage
35 minutes · 1 exercice · Intermédiaire
Exercices de programmation
Voir le testDéveloppement logicielProgrammation : tas
35 minutes · 1 exercice · Intermédiaire
Exercices de programmation
Voir le testDéveloppement logicielProgrammation orientée objet
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testBases de donnéesProgrammation SQL : opérations sur les bases de données
20 minutes · 1 exercice · Niveau débutant
Exercices de programmation
Voir le testBases de donnéesProgrammation SQL : requêtes
30 minutes · 1 exercice · Intermédiaire
Exercices de programmation
Voir le testDonnées et analytiquePySpark
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testIA et apprentissage automatiquePyTorch
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement webReact
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement mobileReact Native
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testCloud et DevOpsRéseaux avancés sur Amazon Web Services (AWS)
10 minutes · 15 questions · Avancé
Choix multiple
Voir le testCloud et DevOpsRéseaux avancés sur Azure
10 minutes · 15 questions · Avancé
Choix multiple
Voir le testCloud et DevOpsRéseaux avancés sur Google Cloud Platform (GCP)
10 minutes · 15 questions · Avancé
Choix multiple
Voir le testIA et apprentissage automatiqueRéseaux neuronaux
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement webRuby on Rails
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testIA et apprentissage automatiqueScikit-learn
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement logicielSelenium avec Python
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement webShopify
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement logicielSystèmes embarqués
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testIA et apprentissage automatiqueTensorFlow
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testIA et apprentissage automatiqueVision par ordinateur
10 minutes · 15 questions · Avancé
Choix multiple
Voir le testDéveloppement webVue.js
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testDéveloppement webWooCommerce
10 minutes · 15 questions · Intermédiaire
Choix multiple
Voir le testTests par domaine professionnel
- Développement web (27 tests)
- Développement logiciel (19 tests)
- IA et apprentissage automatique (9 tests)
- Cloud et DevOps (7 tests)
- Données et analytique (7 tests)
- Développement mobile (6 tests)
- Bases de données (4 tests)
- Assistance et administration informatiques (2 tests)
- CRM et logiciels de gestion (1 test)
- Cybersécurité (1 test)
Les sujets couverts par les 83 tests
La plupart des tests portent sur une technologie donnée. Le développement web est le groupe le plus important, avec 27 tests sur les frameworks front-end et back-end, de React et CSS à Django. Le développement logiciel en compte 19, dont les épreuves de programmation et des sujets d'entraînement comme Clean Code. L'IA et l'apprentissage automatique en comptent 9, dont PyTorch. La data et l'analyse en comptent 7, comme Pandas et Apache Spark for Data Engineers. Le cloud et le DevOps en comptent 7, dont Microsoft Azure. Le développement mobile en compte 6, de Flutter à Développement Android avec Kotlin. Les bases de données en comptent 4, comme MySQL. Quelques tests sur les scripts shell, la cryptographie et le langage Apex de Salesforce complètent la sélection.
Les 69 tests de connaissances sont à choix multiples et s'appuient sur de courts extraits de code et des mises en situation. Presque tous durent 10 minutes ; le test Pandas dure 12 minutes.
Les 14 autres tests sont des épreuves de programmation : le candidat écrit un programme et des cas de test masqués vérifient son résultat. Douze portent sur les algorithmes, les structures de données et le débogage, comme Programmation : tableaux et Programmation : graphes. Deux sont des épreuves SQL qui s'exécutent sur SQLite.
Comment fonctionnent les épreuves de programmation
Chaque test de programmation consiste en une seule épreuve avec une limite de temps. Programmation : algorithmes, niveau débutant dure 15 minutes. Les épreuves de niveau intermédiaire sur les algorithmes et les structures de données durent 35 minutes chacune, tout comme Programmation : débogage, la seule épreuve de niveau avancé.
Pour les épreuves sur les algorithmes, le candidat choisit parmi six langages courants. Chaque épreuve est vérifiée pour fonctionner de la même manière dans chacun d'eux. L'épreuve de débogage présente au candidat du code qu'il ne connaît pas et une spécification écrite. Il doit repérer l'erreur et la corriger sans casser ce qui fonctionne déjà.
Les deux épreuves SQL demandent de rédiger une requête à partir d'un bref énoncé professionnel. Programmation SQL : opérations sur les bases de données est de niveau débutant et dure 20 minutes : filtrage, calculs simples, regroupement et tri. Programmation SQL : requêtes est de niveau intermédiaire et dure 30 minutes. Elle porte sur une base de données comportant plusieurs tables.
Les 14 tests de programmation nécessitent un ordinateur, pour que l'éditeur soit confortable à utiliser. C'est aussi le cas des tests Pandas et Analyse de données avec R. Les 67 autres tests peuvent également être passés sur un téléphone.
Quels tests choisir selon les postes et les niveaux
Choisissez un test qui correspond aux technologies indiquées dans la description du poste, et un niveau adapté à l'expérience requise. Sur les 83 tests, 75 sont de niveau intermédiaire.
Les deux tests de niveau débutant sont des épreuves de programmation. Programmation : algorithmes, niveau débutant convient à un développeur junior, à un jeune diplômé ou à un stagiaire qui écrit du code. Programmation SQL : opérations sur les bases de données convient aux développeurs back-end juniors, aux assistants data et reporting, ainsi qu'aux testeurs QA qui consultent de petites bases de données.
Les six tests avancés s'adressent aux spécialistes expérimentés. Réseaux avancés sur Azure et ses versions AWS et Google Cloud conviennent aux architectes réseau et cloud. Vision par ordinateur et Apprentissage multitâche (MTL) conviennent aux ingénieurs en apprentissage automatique et aux scientifiques appliqués. Programmation : débogage convient aux ingénieurs expérimentés qui maintiennent ou relisent le code d'autres personnes.
Les tests de niveau intermédiaire correspondent à des postes de niveau intermédiaire. React convient aux développeurs front-end et full-stack. Node.js et Express.js conviennent aux développeurs back-end qui créent des API. React Native convient aux développeurs mobiles. Pandas et Analyse de données avec R conviennent aux analystes et aux scientifiques des données qui programment. Programmation : algorithmes, niveau intermédiaire convient aux ingénieurs de niveau intermédiaire qui écrivent du code destiné à la production.
Comment les combiner
Pour un développeur, une bonne sélection associe ses connaissances à sa capacité à créer. Choisissez un ou deux tests de connaissances sur les technologies utilisées, de 10 minutes chacun, puis ajoutez une épreuve de programmation adaptée au poste.
Un développeur front-end pourrait passer les tests React et CSS, puis Programmation : tableaux. Un développeur back-end utilisant Python pourrait passer les tests Django et Conception d'API REST, puis Programmation SQL : requêtes. Un ingénieur data pourrait passer les tests Apache Spark for Data Engineers et Programmation SQL : requêtes, car les deux s'adressent aux ingénieurs data. Un développeur junior pourrait passer Programmation : algorithmes, niveau débutant, et Programmation SQL : opérations sur les bases de données, pour un total d'environ 35 minutes.
Une épreuve de programmation de 35 minutes est la partie la plus longue d'une sélection. Une seule épreuve suffit donc, sauf si le poste exige deux compétences distinctes en programmation.
Pour les outils liés au code, comme Git, Docker ou PostgreSQL, consultez les tests de compétences logicielles de la bibliothèque de tests.
Chaque score est un indicateur pour votre équipe, pas un verdict. Il n'y a pas de seuil de réussite, et aucun résultat ne fait à lui seul avancer ou écarter une candidature. Un résultat de programmation s'interprète mieux en complément d'un échange sur la manière dont le candidat a abordé l'épreuve.
Comment nous veillons à l'équité des tests
Les principes d'équité de ces tests visent un seul objectif : la réponse doit dépendre des compétences en programmation, et non de la version, du langage ou de l'entreprise auprès de laquelle le candidat a appris.
Pour les épreuves de programmation, les candidats choisissent le langage qu'ils maîtrisent le mieux, et chaque épreuve est conçue pour fonctionner de la même manière dans tous les langages proposés. L'épreuve de débogage comporte les mêmes erreurs dans chaque langage. Le problème à trouver ne repose jamais sur une subtilité propre à un langage. Toutes les règles vérifiées par les cas de test masqués, comme la casse, les espaces ou l'ordre, sont indiquées dans l'épreuve. Les épreuves SQL précisent la structure des tables, la signification des colonnes et le résultat exact attendu.
Dans les tests de connaissances, le code est court, neutre et s'appuie sur les versions actuelles. Les questions sur React ont la même réponse avec React 18 et React 19, et celles sur MySQL précisent la version et les paramètres pris en compte. Microsoft Azure décrit les services selon leur fonction et leur nom, afin qu'un changement de nom récent ne désavantage personne.
Les mises en situation utilisent des données courantes, comme des commandes, des réservations et des listes de tâches, ainsi que des prénoms issus de différents horizons. Elles ne contiennent ni expressions idiomatiques, ni références sportives, ni connaissances locales. Les montants sont indiqués sous forme de nombres simples ou d'unités neutres. Le brouillon est autorisé pour 29 des tests.
Consultez Équité et aménagements pour savoir comment les candidats peuvent demander de l'aide, et Comment nous concevons nos tests pour en savoir plus sur la rédaction et la révision des questions.
Foire aux questions
Quels langages de programmation les candidats peuvent-ils utiliser pour les épreuves de programmation ?+
Pour les épreuves sur les algorithmes et les structures de données, les candidats choisissent parmi six langages courants et chaque épreuve est vérifiée pour fonctionner dans chacun d'eux. Les deux épreuves SQL sont rédigées en SQL et s'exécutent sur SQLite. Chacune précise les colonnes, l'ordre et l'arrondi exacts attendus.
Les candidats peuvent-ils passer les tests de programmation sur un téléphone ?+
Oui, pour la plupart. Les 67 tests à choix multiples, à l'exception de Pandas et Analyse de données avec R, peuvent être passés sur un téléphone, une tablette ou un ordinateur. Les 14 épreuves de programmation, Pandas et Analyse de données avec R nécessitent un ordinateur, afin que le code et les données soient assez grands pour être manipulés.
Un test de programmation à choix multiples suffit-il pour évaluer un développeur ?+
Il permet d'évaluer rapidement les connaissances pratiques d'une technologie donnée, mais pas la capacité à écrire un programme fonctionnel. Pour cela, ajoutez une épreuve de programmation. Aucun de ces tests ne remplace un entretien technique : ils fournissent tous deux des éléments dont votre équipe peut discuter avec le candidat.
Les tests de connaissances dépendent-ils d'une version spécifique d'un framework ?+
Les questions sont conçues pour éviter cela. Elles portent sur des comportements stables dans les versions actuelles et précisent la version lorsque c'est important. Par exemple, les questions sur React reposent sur des réponses valables à la fois dans React 18 et React 19, et celles sur Django ciblent les versions actuelles avec support à long terme.
Existe-t-il des tests de programmation pour les postes en data et en apprentissage automatique ?+
Oui. Pandas et Analyse de données avec R conviennent aux analystes et aux scientifiques des données qui programment, et Apache Spark for Data Engineers convient aux ingénieurs data. Pour les ingénieurs en apprentissage automatique, il existe des tests sur des frameworks comme PyTorch et TensorFlow, des tests sur l'apprentissage automatique dans le cloud avec Azure, AWS et Google Cloud, ainsi que le test avancé Vision par ordinateur.
Créer une évaluation à partir de ces tests
Choisissez les tests adaptés à votre poste, invitez des candidats et comparez leurs résultats.