Fizzbuzz et entretien 90% de quiches, vraiment ?

J’aimerai avoir votre retour sur cet article.

http://sametmax.com/fizzbuzz-en-python/

Dans ma vie, j’ai été payé pour faire des projets infos pour des etudiants de grandes ecoles (coucou dauphine), j’ai filé des cours d’infos / codes a des 4 eme d’ingés info et j’ai été attéré par leur niveau.

J’ai vu pleins de nanas profiter de geeks pour les projets de code et avoir leur dut info sans savoir coder.

Donc est ce que réellement plein de gens se disent codeur et / ou finissent consultat sans savoir coder ?

J’aimerai vos retours la dessus.
90% me semble beaucoup.

Bussiere

Faudrait aussi voir ce que veut dire “90 % s’y cassent les dents”.
Est-ce juste un problème de forme et que le programme ne compile pas (faut de frappe, ommission d’un “;” à cause du stress…) ou vraiment un problème de fond avec aucun algo de sorti ?
Aussi quelles sont les conditions de passation du test (5 minutes tout seul, langage imposé, en concurrence avec d’autres dans la même salle, etc ?)

Effectivement si c’est un problème de fond, 90 % me parait beaucoup.
Même quand j’ai passé mon DUT il devait y avoir un bonne proportions d’élèves qui étaient là sans trop de motivation (enfin c’était mon impression), mais pas 90% non plus.

Par contre un consultant qui ne sait pas coder, ça dépend du profil. Ici y’a des consultant techniques et des fonctionnels. mais un consultant technique qui ne sait pas coder je ne pense pas que ça existe (ça voudrait dire ne rien pouvoir faire chez le client ?).

Ca dépend des gens, j’imagine, comme dans n’importe quel métier. Ici, on embauche des bac+5 qui savent même pas faire un “echo ‘toto’” et qui n’ont pas la logique algorythmique alors qu’ils ont un diplôme d’“ingénieur en informatique”.

Condition du test :

Langage libre voire pseudo code.

Et tu peux etre consultant sans toucher a du code hein, chez nous on en a. Ils font des specs sont MOA & co, et produisent de l’uml ou du merise.


[quote=“Gratz, post:3, topic: 54787”][/quote]

Ouais mais faut voir la proportion, ici elle semble vraiment alarmante.

Je trouve pas le chiffre de 90 % dans l’article original, je vois pas d’où il sort (non, pas là), ceci dit même à 20 % ça serait curieux parce que c’est pas super compliqué comme problème.

C’est surtout complètement inutile pour juger quoi que ce soit sur un candidat.
Allez, disont ca permette d’effectuer un ecremage, ton process de recrutement est vraiment a chier si ce genre de truc t’es obligé de le poser en entretien pour refouler les candidats.
Si en entretien tu poses un truc comme ca, tu testes quoi ? que le mec sait faire un % et un echo dans une boucle ? Dans un langage donné. Yeah, t’as une belle bande de bras cassé la, recruteur comme candidat.

Je serais plus mefiant du mec qui s’offusque du fait qu’un mec fasse un test lambda pour juger pas grand chose et qui est pas capable de verifier/mettre un lien correct sur son site wordpress.
( http://sametmax.com/fizzbuzz-en-python/imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-who-grok-coding/ au lieu de http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-developers-who-grok-coding/ )

Apres, on peut disserter des heures de code, consulting, etc. Perso, recemment, sur un entretien, c’etait discussion technique, test d’algo, de maths, de resolution de problemes, de comprehension de problemes.
Aucune mention de langage passé le premier entretien technique sous word.

[quote=“Moe, post:5, topic: 54787”][/quote]

À sa surprise, 90 % des candidats s’y cassent les dents, ce qui lui permet de ne passer du temps qu’avec le reste.

[quote=“AnA-l, post:6, topic: 54787”][/quote]

Comme dit hein les mecs dont j’ai fait les projets a dauphine miage ont eu leur diplome de meme que les nanas que j’ai croisé en dut, et de meme que certaines personne d’une ecole d’ingé que je ne peux nommer parce que des potes y sont.

Ca me rappelle un gars qui est sorti d’un master en info à l’unif, quand je lui ai demandé ce qu’il avait appris comme langage il m’a dit qu’ils avaient même pas touché à du C en 5 ans, mais que par contre ils avaient appris “la bonne façon de programmer”… J’ai regardé son programme et en gros c’est 5 ans de maths avec les ingés avec des cours d’algo en truc “informatique”, au delà de ça c’est à peine si le gus sait comment allumer un PC.

J’ai fait passé quelques entretiens à plusieurs occasions, toujours pour le même poste que celui que j’occupais, à savoir développeur. Et je n’ai jamais eu à poser une question « écrite » à un candidat. Je trouve que l’écrit (au sens du pseudo-code ou d’un TP) est un très mauvais moyen de poser des questions en informatique, et en particulier en développement.

Pour savoir si un candidat sait développer, il suffit plus simplement de lui demander de te décrire un projet qu’il a réalisé, de lui faire faire un schéma correspondant, et de jouer à zoomer : tu prends une brique et tu lui demandes comment elle est faite à l’intérieur ; puis une sous-brique etc. jusqu’à atteindre un niveau « code » (par exemple l’algorithme derrière un service, du cache, du tri, que sais-je…). Tout ça à l’oral, avec l’appui d’un croquis (mais pas de pseudo-code, ou en tout cas pas si le candidat ne le fait pas de sa propre initiative).

Je termine aussi tous mes entretiens en parlant de projets personnels. En tant que candidat je parle de choses que j’ai réalisé hors-travail (ça peut aller du simple truc fait pour voir comment une techno fonctionne à un vrai programme qui fonctionne selon le poste visé et les technos visées). En tant que recruteur je demande au mec s’il code pour lui-même, et quoi. Et j’ai tendance à accorder un gros bonus confiance à un mec qui sait me sortir l’URL de son projet et/ou me montrer rapidement de quoi il parle avec conviction. Je pense qu’on reconnaît un bon développeur au fait qu’il s’agit quand même souvent (pas toujours mais souvent quand même) d’un métier de passionné.

Si en plus lors de l’entretien j’ai eu le feeling que le gars sait communiquer (d’où les croquis), ça me dit s’il est apte à bosser en équipe. Ce qui est probablement le critère n°2 après les pures compétences techniques et le critère n°1 pour un junior dont on sait à l’avance qu’il faudra prendre le temps de le former ou sur un projet où il faut vraiment travailler à plusieurs.

Pour l’instant ça a toujours été un succès pour le plus grand plaisir de mes responsables et mon plus grand plaisir à moi aussi. Je croise les doigts.

Edit:

Et du coup il m’est arrivé de valider le cut pour un candidat qui venait des cours du soir du CNAM, alors que ça faisait peur à mon chef de projet de l’époque : le mec en fin d’entretien m’a dit « je ne code pas vraiment chez moi, mais comme j’aime l’électronique je joue avec un truc qui s’appelle Arduino, je ne sais pas si vous connaissez… » Malheureusement pour lui il a fini deuxième au final parce qu’on a eu un candidat encore plus geek et qui était mieux sur nos technos :slight_smile:

Ce qui me tue dans ces témoignages, c’est que certaines personnes, qui sont plus diplomées que moi, programment comme des billes.  Alors quand certaines se retrouvent à des postes important…

Enfin, ce qui compte, comme dans tout métier, c’est d’être avec les bons associés, être passionné. Ca doit être pour ça que j’aime travailler dans une société de jeu vidéo. Le tri est vite fait dans ce milieu. 

[quote=“Histrion, post:9, topic: 54787”][/quote]

Je suis d’accord, mais la tu rentres dans les details de la prog tu creuses l’entretien.
Perso j’ai passé quelques entretiens dans le privé et j’ai été pris parfois, mais j’avais rarement un techos en face.
Ce test met le doigt sur le fait que les entretiens d’embauche ne sont pas asez fouillé, lui a mis au point ce test pour aller plus vite.

[quote=« Bussiere, post:7, topic: 54787 »][/quote]Oui mais on sait pas d’où sort ce chiffre, et comme dit AnA-l, il sait pas faire un lien vers un autre site, donc on peut douter de lui. :stuck_out_tongue:

[quote=“Bussiere, post:11, topic: 54787”][/quote]

Si ce qui te gène c’est de filtrer les CV avant de recevoir les gens en entretien, il y a la possibilité de faire la même chose (en un peu plus court) au téléphone, avec le même genre de questions. En cinq à dix minutes sur un CV sur lequel tu as un doutes tu peux décider si oui ou non tu le reçois.

Après, quand le recrutement est fait par un manager qui ne s’appuie pas sur un techno, c’est sûr ça marche moins bien. Mais là encore je pense que le test technique ce n’est pas une bonne solution… Je pense vraiment qu’il vaut mieux libérer un mec pour dix minutes au téléphone de temps en temps.

Si je reprends le post du blog que tu cites Bussière je suis d’accord avec la situation loose-loose. Mais pourquoi les boîtes ont l’impression de ne plus voir que des tanches ? Si je reprends les points :

  • Les boîtes non-tech se retrouvent avec le fond du panier car elles embauchent en aveugle et les utilisateurs se retrouvent en mode dégradé en permanence. Une personne qui travaille chez Colissimo m’a parlé dernièrement de l’enfer du développement de leur système de gestion de paie fait en interne par un mec qui visiblement ne pige rien.
Effectivement c'est comme les subprimes... On n'achète pas quand on ne comprend pas. On passe par un cabinet de recrutement. OK ça coûte un peu plus cher, mais le risque de tomber sur une tanche en face vaut vraiment l'économie ? Si je comprends bien ton premier post Bussière, toi tu penses que non. En pratique j'ai l'impression que beaucoup de boîtes ont préféré la réponse "oui".

Et pour les boîtes un peu plus grosses ça va même plus loin. Arrêter les embauches de dévs en interne avec de beaux slogans comme “l’informatique n’est pas notre coeur de métier, nous allons l’externaliser” puis virer les équipes en les remplaçant par des plateaux en Inde… Grande idée. Et surtout pour ensuite venir pleurer que toute la connaissance est partie, ou que les indiens ne font pas le petit bonus d’heures sup’ non payées. Bah oui, eux ils ne travaillent que sur contrat et sur spécs, pour eux c’est un emploi pour nourrir la famille et payer les études des gamins, il ne font pas ça par passion pour le boulot.

  • Les boîtes technos en chie un max pour trouver des bons dev. Ils sont souvent en sous-effectifs et se plaignent d’enchaîner les entretiens depuis un an sans rien trouver.
Le dév, tu le veux, tu le paies à sa valeur. Le marché aujourd'hui fait que les bons dévs sont rares, il faut donc être prêt à les payer cher. Ceux qui se plaignent de ne pas trouver de bons dévs sont ceux qui ont une fâcheuse tendance à avoir les poches percées. Perso je n'ai jamais entendu une boîte sérieuse (qui a les moyens de ses ambitions) se plaindre de ne pas trouver de bons dévs. Avec quelques semaines devant soi on trouve.
  • Les devs se sentent insultés par la plupart des annonces de job et les bons trouvent rarement (en France) un salaire et des conditions de travail qui correspondent à leurs qualifications. Car un bon dev aujourd’hui est quelqu’un de TRES qualifié. Or il est souvent classé selon son diplôme plutôt que ses compétences.
L'insulte c'est quand une boîte déménage en banlieue parisienne à deux heures de n'importe où, sur la pire ligne de transport, avec encore dix minutes à pieds à la fin (sans compter les agressions), le tout pour économiser sur le loyer. Et pour ensuite se plaindre que les bons dévs ne veulent plus venir. Je passe sur le fait qu'en plus le-dit déménagement se fait tous les cinq ans, pour le plus grand plaisir de ceux qui voudraient prévoir où ils louent/achètent.

Tout ça étant mis bout-à-bout, oui, dans ces conditions tu trouves 90% de buses pour des postes sous-payés, instables, loin de tout et surtout de chez soi. Mais propose à un mec doué de bosser dans un coin correct et sur le long terme, avec un salaire à la hauteur de ce qu’il va rapporter à la boîte en automatisation / capacité de vente / impact sur Internet, et sans le menacer de le remplacer par une dizaine de contrats avec un plateau à Mumbai et je suis sûr qu’il acceptera de faire du Cobol pour toi !

PS :

Sinon y a ça :
http://adland.tv/files/imagecache/comment_post/navngo.jpg

Pour ceux qui sont curieux, ça utilise quelques astuces bien vicelardes de C++, notamment l’ordre des inits…

Moi ce que je découvre surtout dans cette histoire c’est que Sam, Max et Bussiere doivent être des politiciens pour pouvoir passer de la majorité dans l’article original à 90% sans même sourciller (et accessoirement, sachant que l’article original ne précise pas la taille de l’échantillon il est impossible de juger de la validité de cette affirmation)

[quote=“Catleod, post:15, topic: 54787”][/quote]

http://www.codinghorror.com/blog/2007/02/why-cant-programmers-program.html

http://www.codinghorror.com/blog/2010/02/the-nonprogramming-programmer.html

Pour ca que je met un point d’interrogation.

Quelques années apres par quelqu’un d’autre ca semble etre du 50/50 :
http://www.globalnerdy.com/2012/11/15/fizzbuzz-still-works/

Perso je fais des portes ouvertes de l’ecole d’inge ou sont mes potes a qui je file des cours.
Pour la petite histoire je leur file des cours parce que ca m’horripile qu’ils sortent d’une ecole d’ingé d’info sans savoir programmer.
J’ai du leur expliquer quand meme ce que c’etait qu’un modulo, ou faire une boucle for.

Je vais voir ce test chez eux ce que ca va donner.

c’est pas beaucoup mieux avec ces 2 nouveaux liens (le premier arrive à 99.5% d’échec, et le deuxième n’est pas documenté). Et pour répondre de façon plus concrète à ta question : l’expérience des recruteurs avec ce test “FizzBuzz” ([HS] y’a pas une pub/émission de télé avec une bande son qui fait ces bruits ?[\HS]) est biaisé et ne permet  pas de déterminer le nombre de personne se disant développeur en n’étant incapable d’écrire une ligne de code. Pourquoi ? (très) rapidement, et en gardant l’exemple des 199 pour 200 : à chaque fois qu’un recruteur ouvre un poste, il reçoit 200 CV, dont un seul correspond et est donc recruté. Les 199 qui restent vont a priori envoyé leur CV au prochain poste du même type proposé, etc… Si on pousse se raisonnement jusqu’à l’absurde, on en conclue que 100% des développeurs ayant un poste sont compétents (au sens du test FizzBuzz) et que 199 demandeurs d’emploie font perdre du temps aux recruteurs.

Le dernier est de un sur deux.
http://www.globalner…zz-still-works

Ca reste quand meme enorme.

Pour ca que je met un point d’interrogation.

Perso je traine dans le public parfois, et quand tu vois certains echec. Le seul dont je peux parler est celui de louvois le logiciel de gestion de paie des armées.
Quand tu vois que steria va etre embauché par le ministere de la justice ca fait peur.

Je cherche juste a savoir si c’est moi qui me fait des idées en voyant ces chiffres, et de mon vécu personnel (dauphine and co).

Et surtout de ce que j’en vois ce sont des postes que je n’aime pas ou les gens passent leur temps a faire du merise, uml et des reunions et pondre des specs mal foutus.
Pour brasser du vent a ce genre de poste effectivement tu n’as pas besoin de savoir coder.

Si je filais ce test a ma MOA je prends les paris que 99% ne saurait pas le resoudre.

Je cherche donc juste a savoir si ca se ressent ailleurs.

Un échec comme Louvois, ce n’est pas au niveau des devs que ça s’explique, c’est beaucoup plus haut.

[quote=“Twin, post:19, topic: 54787”][/quote]

Bah  comme dit les mecs au dessus de moi, mes potes ou les mecs de dauphines sont a ce genre de poste.
Sans avoir jamais codé.