EN TEMPS RÉEL
Recrutement, remplacer l’entretien technique?
Par Bruno 12-09-2013
Le processus de recrutement des développeurs chez af83 est, somme toute, assez classique. Il comporte notamment un entretien qui sert à évaluer le niveau technique du candidat et à estimer si celui-ci est suffisant pour entrer chez af83. Comme nous sommes très exigeants envers nous-mêmes, nous n'hésitons pas à poser des questions très difficiles pour pousser certains candidats au delà de leur zone de confort.
L'entretien technique n'est pas parfait mais il remplit son rôle. Alors pourquoi vouloir le remplacer ? Plusieurs voix sur Internet se sont récemment faites entendre pour mettre en avant les faiblesses des entretiens techniques et proposer des solutions alternatives. Je vous conseille notamment la lecture de I will not do your tech interview.
Pour résumer, il est principalement reproché aux entretiens techniques :
- d'être intimidants, empêchant certains développeurs pourtant très compétents d'avoir la moindre chance d'y réussir ;
- de privilégier l'empilement de connaissances à une quelconque mise en pratique ;
- de ne pas du tout s'intéresser au travail en équipe.
Au final, l'entretien technique paraît ainsi assez artificiel et ne pas du tout refléter les vraies conditions de travail de tous les jours. L'idée est justement de remplacer l'entretien technique par un vrai travail dans de vraies conditions. Le candidat viendrait passer une journée dans l'entreprise et travailler en pair programming avec un développeur expérimenté sur de vraies tâches à réaliser. Cela permettrait de vraiment se rendre compte de ce que le candidat pourra apporter à l'entreprise s'il est pris.
Cette alternative a l'air génial, on la met en place ? Pas si vite, elle a aussi ses inconvénients. Déjà, faire travailler un candidat sur un projet de l'entreprise, ça n'est légal que si celui-ci a un contrat de travail. On peut faire un contrat de travail d'une journée mais, en France, c'est compliqué. De plus, la plupart des candidats sont encore en contrat avec une autre entreprise et souvent ce contrat interdit justement au candidat de passer un autre contrat de travail.
Deuxième inconvénient, cette méthode coûte cher. Il faut d'une part payer le candidat pour sa journée. Mais il faut également qu'un développeur confirmé se prête au jeu pendant cette journée. Si le candidat est bon, pas de soucis. Par contre, s'il ne tient pas la route, le développeur va être bien moins efficace que d'habitude.
Enfin, le choix du projet peut être compliqué. Il vaut mieux éviter les projets confidentiels. Si le projet est complexe, le binôme risque de passer la journée à juste installer le projet. Mais si le projet est trop simple, cela ne sera pas forcément idéal pour juger du niveau du candidat.
Pour ces raisons, plus le fait que notre processus actuel marche bien, nous n'allons pas remplacer l'entretien technique chez af83. Par contre, il n'est pas exclu que, dans un futur proche, nous ajoutions une épreuve de code courte (30-45 minutes) en plus de l'entretien technique. Le CTO de Stripe propose des idées sympathiques à ce sujet sur What is the engineering interview process like at Stripe?. Mais rien n'est encore décidé et l'entretien technique a encore de beaux jours devant lui chez af83.