11 points par GN⁺ 2025-03-14 | 3 commentaires | Partager sur WhatsApp
  • Dans l’industrie du logiciel, il existe un mythe selon lequel certains seraient 10 fois plus productifs que leurs collègues, les fameux « ingénieurs 10x »
  • Pourtant, cette idée repose sur des bases fragiles et risque de renforcer des biais ou de fixer des critères irréalistes

Mesurer la productivité est complexe et imparfait

  • Comment mesurer la productivité ?
    • Les domaines couverts par les ingénieurs sont très variés : microprocesseurs, IoT, bases de données, services web, UX, etc.
    • Les langages et frameworks utilisés le sont tout autant : Golang, Python, COBOL, Lisp, etc.
    • Une expertise sur des domaines connexes, des marchés et des produits est nécessaire : sécurité, visualisation de données, marketing, finance, etc.
    • Les phases de développement et l’échelle des produits diffèrent aussi : entre un rover d’exploration martienne et un simple logiciel, les réalités ne sont pas les mêmes
  • La technologie évolue
    • Même un ingénieur excellent peut, avec le temps, se retrouver en retard sur certaines technologies
    • Quelqu’un qui était un « ingénieur 10x » dans un domaine donné peut n’être que dans la moyenne dans un autre

Le logiciel appartient à l’équipe, pas à un ingénieur

  • La qualité d’un logiciel est déterminée par la performance de l’équipe, pas par celle d’un individu
  • Même si une personne écrit du code très vite, si le processus de l’équipe est lent, la vitesse finale restera la même
  • Plus de temps est consacré aux tests, aux revues, au déploiement et à la maintenance qu’à l’écriture du code
  • Lorsqu’un ingénieur détient à lui seul la propriété d’un logiciel, son départ crée un risque majeur
  • Une organisation du développement logiciel centrée sur l’équipe est plus stable sur le long terme

Les meilleures organisations d’ingénierie sont celles où les ingénieurs « normaux » peuvent produire d’excellents résultats

  • Une grande organisation d’ingénierie n’est pas forcément composée uniquement d’ingénieurs exceptionnels
  • L’essentiel est de créer un environnement où des ingénieurs ordinaires peuvent obtenir régulièrement de bons résultats et faire progresser durablement le produit et l’entreprise
  • L’équipe doit pouvoir comprendre le système et gérer au quotidien les déploiements, les réponses aux utilisateurs et la résolution des problèmes
  • Les meilleures organisations d’ingénierie sont des environnements où les ingénieurs ordinaires peuvent progresser et réussir

L’importance des ingénieurs « normaux »

  • L’industrie du logiciel accorde une importance excessive aux « personnes brillantes »
  • Netflix dit privilégier les talents du « top 10 % », et Coinbase ceux du « top 0,1 % »
  • Pourtant, la plupart des gens sont ordinaires → il faut donc des systèmes dans lesquels des gens ordinaires peuvent réussir
  • On ne naît pas ingénieur logiciel : on le devient par la formation et l’expérience

Construire des systèmes sociotechniques pour des « gens ordinaires »

  • Les systèmes doivent être conçus pour être faciles à utiliser par des « gens ordinaires »
  • Il faut tenir compte des caractéristiques humaines ordinaires :
    • il existe des biais cognitifs comme le biais de confirmation, le biais de récence ou l’effet de halo
    • la fatigue et l’état émotionnel influencent la performance
    • si une alerte sonne à 3 heures du matin, le risque d’erreur est plus élevé qu’à 15 heures
  • Si les systèmes sont intuitifs et simples à utiliser, les ingénieurs peuvent consacrer leur énergie à l’amélioration du produit

Les grandes organisations d’ingénierie forment des ingénieurs de classe mondiale

  • Une grande organisation d’ingénierie n’est pas celle qui emploie déjà des talents d’exception, mais celle où des ingénieurs ordinaires peuvent progresser
  • Dans une bonne organisation, même des ingénieurs de niveau moyen peuvent produire durablement des résultats et évoluer
  • Les meilleurs ingénieurs émergent naturellement de ce type d’environnement

Il faut recruter les bonnes personnes, pas forcément les « meilleures »

  • Il est plus important de trouver des personnes « adaptées à notre équipe » que de viser les « meilleurs talents »
  • Le système doit favoriser la performance collective plutôt que la performance individuelle
  • Il faut un environnement où le travail d’équipe et la collaboration comptent davantage que les performances individuelles
  • Une culture inclusive et équitable améliore les résultats et offre à des ingénieurs issus d’horizons variés la possibilité de progresser

Conclusion

  • Les « ingénieurs 10x » peuvent exister dans la réalité, mais il est difficile et risqué de relier cela à la performance d’une équipe
  • Les grandes organisations d’ingénierie ne reposent pas sur quelques génies, mais sur une structure dans laquelle des ingénieurs ordinaires peuvent réussir
  • Le système doit renforcer la performance de l’équipe plutôt que celle des individus
  • Le point clé est de créer, grâce à une culture et à des systèmes inclusifs, un environnement où des ingénieurs ordinaires peuvent progresser et obtenir des résultats

3 commentaires

 
iolothebard 2025-03-20

Dans une entreprise où il n’y a que des ingénieurs 100x, les ingénieurs 100x sont la norme. La norme est importante. Élever le niveau de la norme l’est encore plus…

 
felizgeek 2025-03-16

Je pense que les ingénieurs logiciels 10x ou 100x dont parlaient des gens comme Steve Jobs signifient ceci.
Dans des métiers comme le bâtiment, la livraison ou la conduite, il est difficile, même pour le meilleur professionnel expérimenté, d’être plus de deux fois plus efficace qu’une personne moyenne. En revanche, dans des domaines comme le logiciel ou la finance, les meilleurs peuvent produire un travail que 100 personnes ordinaires ne pourraient absolument pas produire.

La formation des talents est importante, mais la sélection des talents l’est aussi. Il me semble qu’il y a une grande différence entre former et sélectionner. Il ne faut pas mélanger les deux ni les confondre.

 
GN⁺ 2025-03-14
Avis Hacker News
  • L’idée que l’ingénierie logicielle serait spéciale tend à être toxique

    • Comme dans la finance, il existe une tendance à surestimer la valeur individuelle
    • Il est important de bien faire son travail puis de rentrer chez soi, et des horaires excessifs révèlent la fragilité du système
    • Un effort constant et réfléchi est important
  • Il n’existe pas d’ingénieur « normal » ; il y a des développeurs de niveaux très variés

    • Il faut des ingénieurs compétents pour constituer une excellente équipe
    • Mais il est difficile de trouver ce type d’ingénieurs
  • Les logiciels sont développés par des individus, pas par des équipes

    • Les projets complexes sont généralement portés par une seule personne exceptionnelle
    • Constituer une équipe est un défi permanent
  • Opposition à la déshumanisation et à la catégorisation de la classe laborieuse

    • Le cœur d’une grande équipe, c’est un excellent leadership
    • Un leader ne peut exister que s’il y a une équipe
  • Déception de voir l’IEEE traiter un sujet qui ressemble à du clickbait

    • Il existe des malentendus sur la manière de mesurer la productivité
    • Le concept d’ingénieur logiciel « normal » est remis en question
  • Un ingénieur x10 est créatif et se soucie de l’expérience utilisateur ainsi que de la maintenabilité du code

    • Un développeur x1 ne regarde que le résultat, ce qui provoque des conflits
  • Le concept d’ingénieur x10 est exagéré, mais certaines personnes accomplissent effectivement énormément de travail

    • Il est difficile de comprendre pourquoi elles s’investissent autant alors même que la récompense n’est pas proportionnelle
  • Le travail d’ingénierie a des caractéristiques différentes de celles d’autres professions

    • La performance est une propriété du couple ingénieur-produit
    • Il est difficile de quantifier les résultats
  • Il arrive de se sentir impuissant en se comparant aux autres

    • On retrouve sa confiance en résolvant des problèmes
    • La productivité augmente quand on a des objectifs clairs
    • La vitesse n’a rien de magique ; elle s’obtient d’une certaine manière
  • Beaucoup d’ingénieurs travaillent pour l’argent, et sans passion il est difficile de devenir un excellent ingénieur

    • Les compétences individuelles sont influencées par la pratique et le talent
    • L’expérience peut être plus utile que l’intelligence