Choisir un développeur

Je viens de lire un article très intéressant : Why the new guy cant code

Comme je l’ai dit dans l’article sur les forfaits, il est indispensable de bien choisir ses développeurs et c’est loin d’être simple. TechCrunch explique bien que le processus de sélection des entreprises n’est pas souvent très performant. Même chez Google il y a des choses à améliorer. J’ai par exemple bien aimé le test technique à faire pour déposer son CV chez Ippon, mais ce n’est pas suffisant.

J’ai aussi souvent cet exercice à faire et ce n’est pas simple. Pour préparer l’entretien je commence par googler le nom du candidat. Je suis en phase avec l’article : aujourd’hui il est juste inadmissible qu’un développeur ne possède pas de site web/blog. Un bon développeur c’est avant tout un passionné, il doit exister sur la toile. Pour une prestation j’ai passé un entretien avec un gars qui avait un site web où il présentait son voyage à Lego Land et des Add-on Counter Strike qu’il avait développés. Avant même de le voir en entretien je savais qu’il était bon car un homme qui aime encore les Legos ne peut qu’être bon :)J’ai encore le souvenir de sa tête se décomposant au moment où je lui est demandé pendant l’entretien : “Alors ? C’était comment Légo Land ?” (la tête de sa commerciale était pas mal non plus :)). Il était un peu gêné au début mais pour moi ce n’était que du positif : il a un site web, il développe des add-on CS sur son temps perso et le contact était bon pendant l’entretien. Résultat : une bonne recrut qui a fait du super boulot.

Pas simple non plus de s’y retrouver avec les CV que l’on reçoit des SSII. Entre les CV retouchés par les commerciaux pour y placer les mots clés recherchés et les CV où le commercial a juste collé l’entête de sa société sur le CV du gars, on est pas aidé. Je ne supporte plus les CV où sont listés les 36 langages informatiques connus, ça ne veut plus rien dire ! Une fois j’ai eu une personne avec sur le CV : “Assembleur Intel et Motorola”, sûrement un TP fait il y a 3 ans : super intéressant pour une presta JEE. Et là pas de chance, moi aussi j’en ai fait de l’assembleur ! Et oui n’oubliez jamais que si vous notez quelque chose sur votre CV, il faut assurer après. Du coup au milieu de l’entretien je demande au candidat : “Peux-tu me dire la différence entre l’assembleur Intel et l’assembleur Motorola”. Et là patatras… même pas capable de se rappeler de l’inversion des bits de poids faible et des bits poids fort pour les octets. Donc pitié, sur les CV ne mettez que l’essentiel et indiquez le niveau de compétence (Java : 3 ans, C# : 1 an, etc…)

Autre expérience intéressante. Je cherchais un développeur JAVA en urgence (genre pour demain) et bien sûr avec de la bouteille. A cause des délais je n’ai eu le CV que d’une personne avec peu d’expérience mais avec des mots clés intéressants comme Maven. L’entretien se passe bien mais j’avais encore des doutes sur ses compétences. Devant son commercial je lui demande : “Tu as une heure de dispo ? J’ai justement un problème avec un appel WS avec Axis, tu m’aides à le coder ?”. Là encore je les ai un peu surpris, mais on s’est mis à deux devant un écran et on a corrigé le problème.

Le plus important ce ne sont pas les réponses aux questions mais comment ils répondent. J’ai sélectionné de très bons développeurs qui savaient répondre “Ah non ça je ne connais pas” au lieu d’essayer de m’embrouiller. Un autre point à ne pas négliger non plus c’est bien sûr le relationnel. Un excellent développeur peut devenir un poids mort s’il ne s’intègre pas facilement dans une équipe.

Pour résumer mes critères perso pour choisir un bon développeur :