L'interview qui dérappe

Posted on jeu. 29 août 2019 in job

Les prémices

Dernièrement, je passais un entretien pour un job de "DevOps Senior" (hors SSII, précision importante). Au bout de 3 entretiens, on me prévient que le prochain sera technique. Normal, me direz-vous. Je tique quand même un peu qu'il faille autant d'entretiens : on en sera au 4e, toujours sans avoir vu de RH, et sans l'ombre d'une proposition.

Là où ça se gâte, c'est que je devrais passer cet entretien technique après 20h, en remote synchrone, de chez moi. Donc, après ma journée de travail normale, et après mon second "boulot" de papa. Oui, j'ai 2 enfants en bas-âge dont je m'occupe en rentrant du boulot : préparation du souper, distribution du souper aux enfants, bains des enfants, coucher des enfants (avec l'histoire et tout le rituel). Tout parent de jeunes enfants sait que ce n'est pas de tout repos. A 20h, on n'a qu'une envie (pire qu'une envie, j'oserais parler même de capacité physique et intellectuelle), c'est de s'écrouler dans un canapé après une douche régénératrice.

L'entretien

Voici le problème que m'a proposé la personne au téléphone et sur un tableau blanc partagé via internet :
Etant donnée cette entrée : [2, 98, 67, 33, 42, 50, 58, 50, 50], codez la fonction qui donne cette sortie : [(2,98), (67,33), (42,58), (50,50)].

J'ai bien demandé avant de coder, il ne regardait pas à la qualité du code pour cet entretien, il faut juste que ça marche. OK. Je propose une première solution quick&dirty fonctionnelle au bout de 10 minutes (je rappelle qu'il est passé 20h, après une journée bien remplie de support).

Ca marche, parfait. L'examinateur change alors l'énoncé avec cette entrée : [2, 98, 67, 33, 42, 50, 58, 50, 50, 50] pour cette sortie : [(2,98), (67,33), (42,58), (50,50), (50,50)]. En changeant l'entrée ainsi, mon code précédent ne renvoie pas la bonne sortie.

Je passe donc les 20-30 prochaines minutes à galérer pour corriger/produire un code qui répond au nouveau problème, tout en répondant aux questions techniques (de programmation, ce détail à son importance) de l'examinateur.

Il est 20h30-20h40 quand je sors enfin un code fonctionnel répondant au problème. Voici mon code final :

input = [2, 98, 67, 33, 42, 50, 58, 50, 50, 50]
output = []

print('input', input)
for i in input:
        try:
                counter_index = input.index(100-i)
                counter = input.pop(counter_index)
                output.append((i, 100-i))
        except:
                pass
print('output', output)

Sortie :

etienne@computer:~/code$ python3 temp.py
input [2, 98, 67, 33, 42, 50, 58, 50, 50, 50]
output [(2, 98), (67, 33), (42, 58), (50, 50), (50, 50)]

La suite

Quelle a été la suite ?
Hé bien, d'après le ton de sa voix et les questions qu'il a posé ensuite, l'examinateur doutait clairement de mes compétences et de mon CV.

C'était il y a plus d'un mois, et je n'ai jamais eu de retour. Pas de mail, ni d'appel téléphonique. Rien. Nada. Silence radio.

Pourquoi ça a foiré, de mon point de vue de candidat ?

  • faire un entretien après 20h est une très mauvaise idée. Pour de multiples raisons :

    • organisation familiale : un "senior" a au moins 10 ans d'expérience, et donc plus de 30 ans et une forte probabilité d'avoir des enfants. Passer un entretien en journée, ça se fait bien, en terme d'organisation. En soirée, il faut composer avec le conjoint et les enfants et l'organisation qui tourne autour (repas de la famille à cuisiner/manger/faire manger, toilettes des petits enfants, devoirs des grands enfants, moments familliaux, etc...).
    • fatigue : à 20h, la fatigue se fait sentir après une journée normale et complète de travail. Et de vie de famille.
  • l'entretien technique n'était pas du tout adapté ni au candidat (moi), ni au poste (de ce que j'avais pu en comprendre dans les 3 entretiens précédents) :

    • juger un adminsys/devops (c'est mon job actuel, et depuis 2012 (pour moi, DevOps/SRE, c'est de l'adminsys 2.0 (oui, ça se discute))) sur ses compétences en programmation/algorythmie est une très mauvaise idée. Pour paraphraser Albert, c'est comme juger un poisson sur sa capacité à grimper un arbre.
    • juger quelqu'un qui a 10 ans d'expérience avec un problème théorique scolaire (clairement, le problème posé est ce qu'on donne en exercice aux étudiants) et attendre une réponse scolaire (répondre au tableau ou sur papier en 2 minutes avec un code fonctionnel pendant que l'examinateur pose des questions), c'est faire un oubli total et volontaire de son expérience et de tout ce qu'il a fait depuis qu'il est sorti d'école.

Effectivement, vu comme ça, j'ai été particulièrement mauvais : j'ai mis 40 minutes à pondre un bout de code répondant à un problème scolaire d'algorythmie pour développeurs débutants.

En regardant le contexte, on comprend pourquoi : il était 20h (11h du matin pour mon examinateur), j'étais fatigué de ma journée de travail normale et de ma seconde vie de papa, et je n'ai pas codé comme ça/ce genre de chose depuis plus de 10 ans.

Mon examinateur n'a pas du tout vu le contexte et m'a catalogué/black-listé.

Dommage.