Vous avez peut-être vu un fil de discussion circuler sur Twitter récemment à propos des « ingénieurs 10x ». Si ce n’est pas le cas, vous pouvez le lire dans toute sa splendeur :
Shekhar Kirani @Accel@skirani10x engineers
Fondateurs si jamais vous rencontrez cette race rare d’ingénieurs, saisissez-les. Si vous avez un ingénieur 10x parmi vos premiers ingénieurs, vous augmentez considérablement les chances de succès de votre startup.
OK, voici une question difficile.
Comment repérer un ingénieur 10x ?13:02 PM – 11 Jul 2019
En résumé, à moins de correspondre à une vision super étroite et stéréotypée du développeur, vous n’êtes pas un « ingénieur 10x ».
Beaucoup diront qu’un « ingénieur 10x » n’existe pas car être 10x meilleur à quelque chose que quelqu’un/la plupart des gens serait assez sacrément difficile. Même si la personne ne veut pas dire littéralement « 10x », elle essaie toujours de dire qu’il y a quelqu’un de significativement meilleur à tout.
Personnellement, je déteste le terme « ingénieur 10x ». Comme « rockstar developer », ce sont de mauvaises descriptions et définitions de ce que sont les grands développeurs.
Il serait fallacieux de dire que tous les développeurs sont égaux. Juste quelques minutes à regarder différents développeurs sur Twitter, je peux déjà voir de nombreux développeurs qui en savent sacrément plus que moi. Cela dit, parler de cet « ingénieur 10x » comme s’il pouvait augmenter considérablement les chances de réussite de votre entreprise est assez ridicule.
Assez de battre ce terrible stéréotype de l' »ingénieur 10x », parlons des choses qui font vraiment de grands développeurs (aka le véritable « ingénieur 10x »).
- 1. Ils sont intelligents mais connaissent leurs limites
- 2. Fort indépendamment mais toujours faire une équipe kick-ass
- 3. Ils aident les autres avec des problèmes
- 4. Ils sont gentils et compréhensifs
- 5. Ils vous mettent au défi (de la bonne manière)
- 6. Ils comprennent que le « new shiny » n’est pas la solution pour tout
- 7. Ils savent que cela n’a pas d’importance quand vous programmez et quel thème d’éditeur vous utilisez
- 8. Ils ne sortent pas de leur chemin pour rendre quelque chose plus complexe
- 9. Ils ne pensent pas au « moi » dans « équipe »
- 10. Vous voulez réellement travailler avec eux
1. Ils sont intelligents mais connaissent leurs limites
À moins qu’il ne s’agisse d’une base de code trivialement petite, ils ne connaissent pas chaque ligne de code qui a été mise en production. Bien sûr, ils peuvent résoudre beaucoup de problèmes par eux-mêmes, mais ils savent quand ils sont bloqués et savent quand demander de l’aide.
Il n’y a rien de mal à demander de l’aide, quel que soit votre niveau de compétence !
2. Fort indépendamment mais toujours faire une équipe kick-ass
Il y a des moments pour programmer indépendamment et il y a des moments pour programmer dans une équipe. Ces développeurs ne prennent pas simplement une tâche et courent dans un coin pour y travailler en silo par rapport à tout le monde. Le développement au-delà de la plus petite échelle nécessite une collaboration constante avec une équipe – qu’il s’agisse de programmation en binôme, de revues de code, de rebondir sur des idées, d’aider au débogage, etc.
Cela ne veut pas dire qu’un grand développeur n’est pas plus à l’aise pour travailler seul sur certaines tâches, mais le développement à grande échelle est pratiquement impossible sans une forte collaboration.
3. Ils aident les autres avec des problèmes
Vous avez déjà demandé de l’aide à un collègue et il l’a fait ? Félicitations, ils pourraient être un grand développeur. Nous pourrions regarder la documentation ou même Stack Overflow pour obtenir de l’aide, mais parfois nous avons réellement besoin de l’aide de quelqu’un qui connaît notre base de code. Si vous êtes un développeur qui sait quelque chose qui pourrait aider un collègue, aidez-le !
4. Ils sont gentils et compréhensifs
Etre un grand développeur ne consiste pas à être un petit malin, à montrer votre intelligence, à ignorer les réunions parce que vous êtes meilleur que ces personnes. Être un grand développeur, c’est aussi être bon avec les choses non techniques. Si vous « aidez » un collègue en lui criant dessus et en critiquant son code, arrêtez tout simplement.
5. Ils vous mettent au défi (de la bonne manière)
Cela peut sembler controversé mais un grand développeur ne va pas vous donner les réponses tout le temps. Cela peut sembler en contradiction avec #2 et #3 cependant cela n’est pas destiné à tenir quelque chose sur vous. Un bon développeur est quelqu’un qui peut vous en donner juste assez pour que vous puissiez le résoudre vous-même. Ces petits défis contribuent à faire de vous un meilleur développeur et vous permettent de comprendre quelles sont les choses sur lesquelles vous pourriez avoir besoin d’apprendre davantage.
6. Ils comprennent que le « new shiny » n’est pas la solution pour tout
Pas pour dire que ces développeurs ne vérifient pas les nouveaux outils et langages (ils peuvent faire ce qu’ils veulent à cet égard), mais ils comprennent que les nouveaux outils ne vont pas magiquement résoudre tous les problèmes.
James Hickey 🇨🇦👨💻@jamesmh_devNous sommes obsédés par l’apprentissage de plus d’outils et de langages !
Si votre architecture est mauvaise, si vous résolvez les mauvais problèmes, si votre client ne comprend pas quand vous essayez d’expliquer les choses… alors les outils brillants n’aident pas.
Et ceux-ci sont fondamentaux pour le succès de votre entreprise !18:54 PM – 27 Jun 2019
7. Ils savent que cela n’a pas d’importance quand vous programmez et quel thème d’éditeur vous utilisez
Les stéréotypes des programmeurs mis à part, pourquoi l’heure à laquelle vous programmez ferait-elle réellement une différence ? Programmez au milieu de la nuit si vous voulez/êtes autorisé par l’entreprise et ne le faites pas si vous ne le voulez pas. La seule raison pour laquelle l’heure devrait entrer en jeu, c’est lorsque vous programmez depuis trop longtemps et que vous n’avez pas dormi ! L’heure réelle de la journée n’a pas d’importance, sauf si cela affecte votre équipe (par exemple, vous travaillez à minuit en programmant pour éviter intentionnellement tout le monde).
Pareil pour les thèmes d’éditeur, pourquoi un thème sombre vous rendrait-il réellement meilleur ? Je vais vous donner un indice, ce n’est pas le cas. Les thèmes sombres ont leur utilité mais ce n’est certainement pas ça.
8. Ils ne sortent pas de leur chemin pour rendre quelque chose plus complexe
Cela pourrait être évident mais il y avait un autre fil Twitter la semaine précédente parlant de programmer quelque chose de manière complexe comme si c’était une bonne chose à faire. Quand est-ce que rendre notre travail et celui de nos collègues plus difficiles a été une bonne chose ?
Il y a certainement des moments où nous pouvons finir par programmer une solution complexe comme peut-être nous ne comprenons pas (encore) complètement le problème. Cela peut se produire lors de notre première tentative de programmation de la solution, c’est à ce moment-là que vous entendez généralement les gens parler de refactoring de code ou de ne pas être « fier » du code qu’ils ont écrit la semaine/mois/année précédente.
9. Ils ne pensent pas au « moi » dans « équipe »
Malgré le fait qu’ils ont vraiment écrit chaque ligne de code source eux-mêmes, du compilateur jusqu’à toute la logique métier, ils savent que c’était un effort d’équipe. Ils n’essaient pas de prendre la vedette à quelqu’un d’autre dans l’équipe – ils soulignent toutes les contributions qui ont fait d’un projet un succès.
Lorsqu’un projet tourne mal, ils ne vont pas de l’avant et blâment tout le monde. Les projets d’équipe échouent en tant qu’équipe, pas en tant qu’individu (sauf intention malveillante). Ils aident toute l’équipe à apprendre des erreurs et à éviter qu’elles ne se reproduisent.
10. Vous voulez réellement travailler avec eux
À la fin de la journée, ces grands développeurs sont des personnes avec lesquelles vous aimez réellement travailler. Vous vous pointez au travail (ou à distance) et êtes heureux de travailler avec une équipe aussi géniale.
Si vous connaissez des développeurs qui ressemblent à cela, dites-leur à quel point ils sont géniaux et à quel point vous êtes heureux de travailler avec eux. 🙂