Lorsqu’une entreprise veut recruter un développeur freelance, elle lui fait souvent passer l’épreuve du test technique. Redouté, mais presque toujours requis, l’entretien technique a pour but de vérifier que le profil du candidat corresponde bien au poste à pourvoir.
Vous êtes développeur et allez passer un test technique ? Retrouvez dans cet article tous les tips pour vous y préparer !
Qu’est-ce qu’un test technique ?
Avant de parler de l’épreuve en tant que telle, expliquons déjà ce qu’est le test technique dans le processus de recrutement d’un développeur.
Les étapes du recrutement du développeur informatique
Lorsqu’une entreprise recrute un développeur informatique – freelance ou non – elle passe par plusieurs étapes. Elles peuvent être :
- l’entretien classique, avec un responsable RH ;
- l’entretien technique, avec un développeur ou le CTO ;
- le test technique, ce dont on va parler plus en détail ;
- le débrief du test technique, avec un développeur ou le CTO.
Si toutes ces étapes ne sont pas obligatoires, la deuxième et la troisième sont souvent présentes dans le cas de l’embauche d’un programmeur.
Une entreprise fait passer un entretien et un test technique à un candidat dans le but de vérifier que celui-ci ait bien les compétences nécessaires au poste, et que son profil technique, la façon dont il réfléchit, code, matche bien avec l’équipe de développement.
L’entretien technique, sans les tests, se fait donc avec un développeur ou le CTO, soit dans les locaux de l’entreprise, soit en visio. Il est souvent plus ou moins le même dans chaque entreprise. On cherchera à connaître votre expérience, les projets sur lesquels vous avez déjà travaillé, votre stack technique favorite, etc.
L’étape du test technique
Le test technique est lui plus subjectif. Il dépendra de chaque entreprise, et il en existe plusieurs types différents :
- le QCM, souvent sur un site web qui propose des exercices personnalisés pour développeurs ;
- le petit exercice, comme écrire un algorithme qui fait une action en particulier ;
- la correction de code : on vous donne un code qui ne fonctionne pas ou qui n’est pas optimisé, et vous devez en faire la correction ;
- l’exercice écrit, sur papier et avec un stylo ;
- le mini-projet qu’on vous demande de faire de chez vous, avec une techno bien spécifique ;
- l’exercice à faire en temps réel, sous le regard du CTO.
Chaque exercice a ses avantages et ses inconvénients, et à moins que vous sachiez à l’avance quel test va vous être donné, il est bon d’être prêt à toute éventualité.
Pourquoi les entreprises font-elles passer des tests techniques ?
Comme nous l’avons dit, une entreprise fait passer un entretien et un test technique pour s’assurer du profil du candidat.
Lorsqu’un développeur rejoint une équipe de développement, que cela soit pour une mission freelance comme pour un CDI, il a besoin d’un temps d’adaptation, notamment vis-à-vis de la stack technique utilisée par l’équipe.
Il aura peut-être besoin d’être formé sur certaines technos, ou au moins s’adapter aux règles, au framework interne, de sa nouvelle équipe.
Tout cela prend du temps, et coûte donc de l’argent. Une entreprise ne veut pas prendre le mauvais candidat pour devoir repasser par tout le processus de recrutement quelques mois plus tard.
Attention toutefois, un test technique “raté” n’est pas systématiquement synonyme de refus du candidat.
À partir d’un test technique, un développeur ou un CTO jugera votre capacité à raisonner, à trouver une solution, cela compte plus que d’arriver au bout de l’exercice.
L’important n’est pas le résultat du test, mais le chemin de réflexion.
Ainsi, vous pouvez échouer un test technique tout en gardant vos chances d’être recruté.
Comment bien se préparer aux tests techniques ?
Maintenant que nous avons fait le point sur ce qu’était le test technique, voyons comment s’y préparer !
Être au point sur la stack technique de l’entreprise
La première étape est, évidemment, d’être sûr de la stack technique utilisée par l’entreprise. Si vous voulez rejoindre une équipe de développeurs web, en tant que dév front-end, soyez sûr de connaître les technos utilisées par l’entreprise (quel framework JavaScript, s’ils utilisent un framework CSS, etc.) – et assurez vous qu’elles matchent bien avec vos compétences !
Revoir les bases et s’entraîner
Une fois le point fait sur la stack technique et vos compétences, vous pouvez vous entraîner à répondre à des quizz en ligne ou à faire des mini exercices. Cela ne couvrira pas tout ce que l’on peut vous demander, mais si cela peut vous aider à gagner quelques points, c’est déjà cela de pris !
Pour vous entraîner en ligne, vous pouvez vous rendre sur les sites de Codingame ou Skillvalue.
Se mettre dans le bon état d’esprit
Avant le test technique, il convient de se mettre dans le bon état d’esprit, dans la bonne condition.
Techniquement, il y a des choses à garder en tête :
- éviter de faire du copier/coller ;
- faire attention à l’indentation du code ;
- faire attention au nommage des variables ;
- se dire qu’on peut nous poser une question sur chaque ligne écrite.
D’une manière générale, il faut aussi essayer de rester calme tout au long de l’exercice. Certains tests techniques peuvent être plus stressants que d’autres, et il est facile de paniquer si on voit le temps défiler alors que la fin de l’exercice est encore loin.
Mais, nous l’avons déjà dit, vous serez plus jugé sur le chemin que vous prenez que sur le résultat. Donc, relaxez-vous, tout va bien se passer !
Exemples de questions techniques en entretien développeur
Que cela soit lors de l’entretien technique, des tests techniques (si vous les faites en présence de l’évaluateur), ou lors du débrief, on vous posera des questions techniques. Voyons-en quelques exemples.
Si vous êtes développeur back-end
Si vous êtes développeur back-end, on risque de vous poser des questions sur ce qu’est un CRUD, les différences entre REST et GraphQL.
On pourrait vous demander comment mettre en place une authentification sécurisée avec un token, quelle techno entre du SQL et du NoSQL est conseillée pour telle ou telle situation, etc.
Si vous êtes développeur front-end
Si vous êtes développeur front-end, et suivant votre technologie et spécialité, on pourra vous demander d’intégrer une maquette en HTML et CSS, ou de consommer des données JSON pour afficher un ensemble d’éléments sur une page web, avec tel ou tel framework.
On pourra aussi vous demander de gérer différents types d’interaction entre le navigateur et l’utilisateur, via un formulaire par exemple.
Ce ne sont que des exemples ! Il y a beaucoup d’autres spécialités dans le monde du développement : développeur logiciel, développeur Big Data, développeur full stack, etc.
Quelques conseils pour un entretien réussi
Enfin, pour terminer cet article, voyons quelques derniers conseils qui vous seront utiles, quelle que soit l’étape de l’entretien d’embauche.
Si on vous pose une question technique à laquelle vous ne savez pas répondre, ce n’est pas grave. Le monde de la tech est vaste, et il est impossible de tout connaître, même avec 20 ans d’expérience. Le mieux est de dire que vous ne savez pas, et si votre interlocuteur vous parle d’une techno qui vous est inconnue, vous pouvez même lui demander de vous expliquer ce que c’est. Cela montrera que vous êtes curieux et avez envie d’apprendre.
À l’inverse, ce n’est pas parce que vous pensez connaître une techno de A à Z que vous devez agir comme tel. Restez humble, il y a grandes chances pour que d’autres personnes, y compris dans l’entreprise où vous postulez, en sachent plus que vous sur le sujet.
Enfin, il est intéressant de montrer votre intérêt pour la programmation, le code, de manière générale. Face à deux profils équivalents, une entreprise préférera prendre un candidat qui a soif d’apprendre, qui aime ce qu’il fait, qu’un candidat bon mais qui ne veut pas forcément progresser plus.