NOTE: Apart from
(and even then it's questionable, I'm Scottish). These are machine translated in languages I don't read. If they're terrible please contact me.
You can see how this translation was done in this article.
Tuesday, 03 September 2024
//Less than a minute
L'un des aspects de MANY LinkedIn qui me bogue est le "comment interviewer les messages des développeurs". Il y a une TON d'entre eux et ils sont dans 3 camps :
Au fil des ans, j'ai interviewé des dizaines de fois et engagé des centaines de développeurs pour diverses entreprises de Microsoft à Dell aux petites startups. J'ai aussi été un psychologue de recherche spécialisé en psychométrie (la science de la mesure des capacités mentales) et un développeur de logiciels. J'ai donc vu le processus de tous les côtés.
Le codage n'est souvent pas une activité sociale. Bien sûr, les "compétences douces" sont d'une importance vitale, mais elles sont souvent orthogonales pour la pratique de l'écriture de code pour résoudre les problèmes des utilisateurs. Alors comment interviewez-vous quelqu'un pour un travail qui concerne surtout l'écriture de code?
Notre profession est également ravagée par le syndrome de l'imposteur. Je l'ai vu en moi-même et dans beaucoup d'autres. C'est une vraie chose. Alors comment interviewez-vous quelqu'un qui se sent déjà comme une fraude?
Notre profession est très embarrassante sur le plan social (et oui comme moi-même un peu autiste); une interview qui est à la fois stressante et nécessite une interaction sociale tout en résolvant les problèmes de codage est une recette de désastre. Alors comment interviewez-vous quelqu'un qui est socialement maladroit?
Lisez d'abord leur curriculum vitae; ne leur parlez même pas si leur curriculum vitae n'indique pas clairement qu'ils ont une expérience suffisante pour le poste pour lequel vous embauchez. Ce n'est pas seulement respectueux de leur temps, mais aussi le vôtre.
Deuxièmement, la mise en place de l'entrevue (ou des entrevues) devrait être aussi libre que possible de stress pour les participants. Cela signifie:
Soyez à l'heure; rien ne rend une personne plus anxieux que d'attendre qu'une entrevue commence. Si tu es en retard, tu commences déjà au mauvais pied. S'ils sont en retard, donnez-leur quelques minutes; ils n'ont probablement pas été à l'arrière des réunions de sorte que leur configuration pourrait être visqueuse.
Est-ce qu'ils semblent être quelqu'un qui s'adapterait à l'équipe en termes de tempérament; sont-ils bons pour l'équipe? C'est important, vous pouvez avoir le meilleur codeur au monde, mais s'ils sont un abruti, ils n'en valent pas la peine.
Un conseil que j'ai trouvé (après des années de questions de séquence de Fibonacci, tableaux inversés, listes liées, etc) est.
Les médecins aiment parler de code qu'ils savent.
Cela signifie que si vous faites une évaluation technique, la personne qui effectue l'entrevue doit pouvoir parler du code qu'elle voit. Si c'est un cadre que vous ne connaissez pas (comme moi interviewant Angular devs) ne vous inquiétez pas trop.
Donc avant l'entrevue avec assez de préavis (5 jours est généralement bon) leur dire que vous leur demanderez de parler d'un morceau de code qu'ils ont écrit. Je ne demande pas généralement un lien GitHub (beaucoup de personnes aux niveaux supérieurs pourraient ne pas avoir cela; j'ai travaillé sur de nombreux projets qui sont propriétaires et ne peuvent pas être partagés).
Dites clairement que vous ne demandez pas un grand projet / un code innovant étonnant. C'est juste du code dont ils peuvent parler. Beaucoup de gens ont ces choses 'famille', les chances sont qu'ils n'ont pas été un contributeur 365 jours série à un grand projet Open Source.
Vous n'embauchez pas en fonction de combien de temps libre quelqu'un a
Alors pourquoi préfère-t-on cette approche? Pourquoi je pense que c'est une meilleure façon d'interviewer les développeurs?
Il y a donc des exceptions ici, les codeurs super juniors ont parfois besoin d'un peu d'exercice de codage, mais prenez-le lentement. Leur demander d'analyser et de refactorer / de fixer une base de code énorme est juste cruel. Pour eux, vous pouvez vous poser des questions sur les concepts de base comme les boucles, les conditions, etc. (conservez-les centrés sur le travail pour lequel vous embauchez). Des modèles? J'ai vu beaucoup de gens qui ne peuvent pas nommer un modèle, mais qui peuvent vous dire quand ils l'ont utilisé. Alors ne t'accroche pas trop à ça.
Des puzzles logiques? Je n'en ai jamais vu l'intérêt. Je n'ai jamais vu de travail où vous devez déplacer le mont Fuji. Je n'ai jamais vu un travail où tu dois savoir combien de balles de golf correspondent à un 747. Je n'ai jamais vu de boulot où tu as besoin de savoir combien de tuners de piano il y a à New York.
Après l'entrevue, assurez-vous de suivre le candidat. S'ils n'ont pas obtenu le travail, dites-leur pourquoi (vous ne m'avez pas montré assez de votre expérience, vous n'étiez pas clair en expliquant votre code, etc.). Ce n'est pas seulement respectueux, mais il les aide aussi à s'améliorer pour la prochaine entrevue. S'ils ont obtenu le travail, assurez-vous qu'ils savent à quoi s'attendre.