Bienvenue dans mon cours sur les tests techniques pour les développeurs. :) Je m’appelle Thomas Dimnet, je suis développeur chez Sens Critique et mentor chez OpenClassrooms.
Ce cours vise à vous donner une meilleure connaissance du processus de recrutement pour les développeurs, en se focalisant sur la préparation de la partie tests techniques.
Familiarisez-vous avec le format de ce cours
Dans ce cours, je vais vous partager mon expérience en tant qu’ancien candidat et qu’actuel recruteur. Vous trouverez dans ce cours :
de courtes vidéos de cours durant entre 1:30 minutes et 3 minutes. J'y parlerai des points fondamentaux à connaître sur les différents tests techniques ;
du texte sous la vidéo me permettant de :
récapituler l'ensemble de la vidéo pour que vous puissiez vous y référer plus tard,
approfondir les notions dont je parle dans les vidéos,
partager des liens vers des ressources complémentaires, telles que des banques d’exercices d’algorithmiques ;
des vidéos complémentaires durant lesquelles je partagerai mon écran pour donner des exemples de tests, avec leur énoncé et une proposition de résolution ;
un quiz vous permettant de valider les connaissances acquises autour des étapes de recrutement, ainsi que la préparation d'une discussion technique et le respect de bonnes pratiques pour résoudre un test algorithmique ;
et enfin une activité vous permettant de réaliser un mini-projet en conditions réelles (ou presque !), qui sera évalué par des pairs.
Dernier conseil : refaites ce cours plusieurs fois. :) Si vous suivez un parcours de développement sur OpenClassrooms, vous pouvez le faire une fois en début et/ou milieu de votre formation, ainsi qu'une fois en fin de formation.
Profitez des tests techniques pour progresser
Notez bien que la partie technique des entretiens n'est pas qu'une étape douloureuse et difficile à passer pour décrocher un job, elle peut aussi vous être utile à vous en tant que développeur. Elle peut permettre de développer vos compétences et de découvrir l'entreprise.
Les tests techniques, c’est le moment où vous allez pouvoir :
vous faire une réelle idée de votre niveau. Que ce soit au travers de la discussion technique, des tests d’algorithmique ou du mini-projet, votre capacité à développer va être jugée, et c’est une bonne chose. Cela va vous permettre de découvrir des solutions auxquelles vous n’auriez pas pensé, ou de découvrir de nouvelles librairies ;
savoir quels sont vos points forts et vos faiblesses. Alors, je ne sais pas pour vous, mais j’aime la critique et j’aime qu’on me dise ce qui ne va pas dans mon code ou dans mon travail de manière générale. Si vous êtes comme moi, vous allez aimer les entretiens . On va mettre en avant ce que vous comprenez très bien et là, vous devez vous améliorer. Je trouve ça inestimable ;
renforcer votre capacité à argumenter. Pourquoi ? Parce que vous allez devoir défendre l’implémentation de vos solutions. En développement, il y a souvent plusieurs solutions à un même problème. Si en tant que junior, on a souvent tendance à n’avoir qu’une seule solution, plus vous allez gagner de l’expérience, plus vous allez voir les différentes approches possibles pour résoudre un problème ; et vous devrez vous justifier : c’est une partie intégrante du métier de développeur.
Demandez du feedback
En parallèle aux retours que vous allez pouvoir obtenir, je vous invite, je devrais même dire je vous encourage à demander du feedback et ce, aussi bien si l’entretien s’est bien passé que s’il s’est mal passé !
Puisque le recruteur va juger votre travail ainsi que votre personnalité, vous allez peut-être, je l’espère, avoir envie de vous améliorer pour réussir un futur entretien et/ou devenir un meilleur développeur.
Si vous voyez que vous avez des difficultés à comprendre certains concepts techniques, des design patterns par exemple, posez des questions et rebondissez. Une telle attitude peut réellement faire passer quelqu’un d’encore un peu fragile techniquement à quelqu’un qu’on a envie de recruter pour former.
Pour vous donner une idée, vous trouverez ci-dessous une réponse que nous avons envoyée à un candidat que nous n’avons pas retenu, mais à qui nous avons fait un feedback :
Bonjour [...],
C’était également un plaisir d’avoir pu te rencontrer pour parler de ta formation et de ton expérience.
Avant toute chose, je t’annonce que nous ne souhaitons pas faire suite à ta candidature. Nous cherchons quelqu’un ayant des compétences techniques plus confirmées au vu des missions que nous souhaitons donner.
Cependant, nous avons beaucoup apprécié de discuter avec toi et tu t’intégreras facilement dans n’importe quelle équipe grâce à ta force de savoir-être.
Pour tes prochains entretiens, il serait pertinent que tu rajoutes un lien vers ton GitHub dans ton CV, et d'essayer de l’alimenter un peu plus. Pour Twitter, il est plus ou moins utile de l’inscrire sur ton CV, en fonction du contenu présent.
Il faudrait également que tu arrives à mieux défendre la partie technique de tes projets, car de l’autre côté on sent que tu es réellement passionné, et que tu prends plaisir à les réaliser.
Je te souhaite bonne chance pour la suite.
Nous n’avons pas décidé de donner suite à sa candidature mais, néanmoins, nous lui avons donné des conseils pour qu’il progresse et pour que cette personne puisse réussir son prochain entretien.
Je pense que nous sommes réellement dans l’une des seules industries qui encouragent le feedback négatif comme le positif. Sachez donc en profiter !
En bref
Ce cours inclut des vidéos, des textes, des vidéos complémentaires où je partage mon écran.
Vos compétences seront évaluées par un quiz et une activité de mini-projet jugée par les pairs.
Je vous encourage à le faire plusieurs fois.
Profitez des tests techniques pour progresser, notamment en récoltant du feedback.