
J'ai travaillé dans des start-ups, des entreprises de taille moyenne et des grandes sociétés. Au fil de mon expérience, je me suis rendu compte que les compétences techniques ne sont qu'une partie de ce qui fait un grand ingénieur.
L'élément humain - la façon dont les ingénieurs abordent les problèmes, interagissent avec les membres de l'équipe, gèrent la pression et se développent professionnellement - détermine souvent leur véritable impact.
Cet élément humain me rappelle certains joueurs de football. J'ai rencontré diverses personnalités d'ingénieurs qui me rappellent les joueurs célèbres que l'on peut voir sur un terrain de football.
Chaque ingénieur apporte une combinaison de compétences, de bizarreries et d'approches qui vont bien au-delà de ses capacités techniques.
1. L'ingénieur Gianluigi Buffon
Ce type d'ingénieur est un vétéran expérimenté qui a tout vu. Pour cette raison, il apporte stabilité et contexte historique à l'équipe et est exceptionnel pour prévenir les désastres grâce à un examen minutieux et à l'assurance de la qualité.
Souvent, ces ingénieurs assurent la maintenance de systèmes importants que personne d'autre ne veut toucher mais dont tout le monde dépend. Ils font preuve de longévité et de performances constantes dans un environnement technologique en constante évolution.
Ils peuvent être réticents à adopter des pratiques de développement modernes, s'accrochant à des outils et des approches dépassés. Parfois, ils peuvent être trop pessimistes à l'égard de nouvelles initiatives en se basant sur des échecs passés parce qu'ils ont vu comment cela se passait dans d'anciennes versions de PHP.
Pour cette raison, ils bloquent parfois l'innovation en faisant preuve d'une prudence excessive à l'égard des expériences passées. Ils ont parfois du mal à s'adapter aux nouvelles technologies.
2. L'ingénieur Roy Keane
Les managers adorent ce type d'ingénieurs. L'ingénieur « Roy Keane » est celui qui fait respecter les normes de qualité du code avec une discipline de fer.
Cet ingénieur est impitoyablement efficace dans l'élimination de la dette technique et ne tolère pas le travail bâclé. Il effectue des révisions de code d'une honnêteté brutale qui améliorent les résultats de toute l'équipe.
Il crée parfois un environnement de travail tendu en raison de son approche intransigeante. En outre, ils rejettent souvent les solutions créatives qui ne correspondent pas à leur méthodologie rigide.
Leurs bases de code héritées sont parfaitement maintenues mais peuvent être intimidantes pour les nouveaux ingénieurs qui souhaitent les modifier.
3. L'ingénieur Juninho Pernambucano
L'ingénieur « Juninho » est un poney à un coup, le spécialiste du coup franc qui excelle à résoudre un type de problème spécifique mieux que quiconque.
Cet ingénieur crée des solutions élégantes pour des obstacles techniques particulièrement difficiles qui laissent les autres pantois. Par exemple, il peut s'agir d'un gourou du langage SQL, d'un magicien d'Excel ou de Regex, d'un maître des feuilles de style CSS, etc. En général, il s'agit de choses que les autres trouvent intimidantes ou qu'ils utilisent avec des connaissances de base.
Ces ingénieurs ont tendance à imposer leur approche spécialisée même lorsque des solutions plus simples conviendraient.
Souvent, ils peuvent être trop académiques dans leur spécialité, étouffant les autres membres de l'équipe avec du jargon et une complexité inutile. Ils éprouvent des difficultés à accomplir des tâches élémentaires en dehors de leur domaine d'expertise étroit.
4. L'ingénieur Zinedine Zidane
La superstar incontestable de l'équipe. Il possède des compétences extraordinaires en matière de résolution de problèmes qui semblent presque magiques. Lorsqu'il est motivé, il peut résoudre des problèmes incroyablement complexes qui font tourner la tête aux autres développeurs.
Ses solutions sont élégantes, époustouflantes et apparemment impossibles. Toute l'équipe tourne autour de son talent et les managers sont prêts à tout pour le satisfaire.
Ils fonctionnent grâce à leur talent naturel et ne peuvent pas s'embarrasser d'un travail cohérent. Très lunatiques et imprévisibles, ils peuvent résoudre un problème de taille un jour, puis disparaître pendant des jours.
Parfois, ils sont connus pour leurs crises dramatiques qui peuvent complètement détruire l'ambiance de l'équipe. Ils donnent des coups de tête au hasard dans les règles du projet lorsqu'ils se sentent agacés et provoquent des drames.
Son statut de superstar lui permet de s'en tirer avec des choses qui vaudraient à n'importe quel autre développeur d'être renvoyé sur-le-champ. Les membres de l'équipe roulent secrètement des yeux, mais sont également impressionnés par son intelligence.
5. L'ingénieur John Terry
C'est le capitaine naturel de l'équipe, qui montre l'exemple plutôt que de se contenter de ses compétences techniques. Il assume la responsabilité des résultats du projet et protège ses coéquipiers des reproches.
L'ingénieur JT crée une culture de la responsabilité et stimule le moral pendant les sprints difficiles. Il est excellent pour encadrer les ingénieurs débutants et promouvoir la collaboration au sein des équipes.
Parfois, ils sont trop disposés à sacrifier l'équilibre entre leur vie professionnelle et leur vie privée au profit de la réussite de l'équipe. Les effets secondaires peuvent être le développement de cercles internes qui excluent les nouveaux membres.
Parfois, ils dépassent les limites lorsqu'ils se battent pour les membres de l'équipe et créent des tensions avec la direction.
6. L'ingénieur James Milner
C'est le joueur utilitaire par excellence dans le monde du développement de logiciels. Cet ingénieur peut passer du front-end au back-end, au DevOps et à d'autres rôles sans perdre une miette. La polyvalence des ingénieurs « James Milner » les rend inestimables pour les managers.
Ils sont capables d'assimiler rapidement de nouvelles technologies et de fournir un travail solide sur différentes piles technologiques. Leur adaptabilité signifie qu'ils peuvent être intégrés à n'importe quel projet et combler les lacunes critiques dans les capacités de l'équipe. Et ils ne se plaignent jamais.
Les mauvais côtés peuvent être résumés par une citation : Le maître de tous les métiers, le maître d'aucun d'entre eux. Bien qu'ils soient incroyablement flexibles, ils n'ont pas la spécialisation profonde qui découle d'une expertise ciblée dans un seul domaine.
Parfois, ils s'éparpillent. L'étendue de leurs connaissances peut parfois se faire au détriment d'une connaissance approfondie de technologies spécifiques.
Les managers apprécient leur flexibilité mais peuvent hésiter à leur confier des défis techniques complexes et spécialisés.
7. L'ingénieur N'Golo Kanté
N'golo est le joueur d'équipe par excellence, qui allie humilité et éthique de travail exceptionnelle. Ce type d'ingénieur couvre constamment des quantités massives de terrain technique sans chercher à être reconnu.
Sa meilleure compétence est de s'occuper des tâches les moins glorieuses que les autres ingénieurs évitent - les bugs, les systèmes hérités, le refactoring, l'écriture de tests et, en général, le travail sur des projets merdiques.
Toujours les premiers à arriver et les derniers à partir, ils travaillent discrètement pour assurer le succès de l'équipe. Ils sont capables de reconnaître les problèmes techniques avant même qu'ils n'apparaissent.
Ils sont tellement concentrés sur le soutien aux autres qu'ils ont souvent du mal à défendre leur propre carrière. Pour cette raison, ils peuvent être négligés pour des promotions alors qu'ils sont les membres les plus importants de l'équipe.
Parfois, cette situation permet à des collègues plus agressifs ou plus voyants de s'attribuer le mérite du travail qu'ils ont mis en œuvre. Leur humilité peut être prise pour un manque d'ambition alors qu'en réalité, ils sont à l'origine d'une grande partie du succès de l'équipe.
8. L'ingénieur Nicolas Anelka
Tout le monde connaît au moins un job-hopper talentueux qui a travaillé dans huit entreprises différentes en six ans. Ils apportent une expérience considérable dans de multiples domaines technologiques et industriels.
Les ingénieurs Anelka sont comme des assassins payés. Ils s'adaptent rapidement à de nouvelles bases de code et sont opérationnels. Ils sont excellents pour identifier des modèles dans différents systèmes.
Parce qu'ils vont trop vite, ils ne restent jamais assez longtemps dans l'entreprise pour entretenir ce qu'ils construisent ou pour constater les conséquences à long terme de leurs décisions en matière de conception.
Les entreprises hésitent à investir dans ces personnes, sachant qu'elles disparaîtront dans les 18 mois.
9. L'ingénieur Jamie Vardy
Ce type d'ingénieur est l'ingénieur non traditionnel qui a pris un chemin non conventionnel vers la technologie sans diplôme d'informatique. Tout le monde connaît un ingénieur qui a commencé à coder à 28 ans après avoir abandonné l'université et fait carrière dans l'hôtellerie, le tourisme et la vente au détail.
Les meilleures compétences de ces ingénieurs sont la résolution de problèmes concrets et la perspective commerciale qui font souvent défaut aux ingénieurs ayant reçu une formation classique. Ils écrivent des codes pragmatiques en mettant l'accent sur les résultats plutôt que sur l'élégance. Ils s'attaquent également à des problèmes qui intimident les ingénieurs de formation classique.
Lorsque vous travaillez avec eux, vous pouvez remarquer certaines lacunes dans les bases de l'informatique qui deviennent parfois évidentes dans certains domaines.
Ils s'appuient davantage sur Google et ChatGPT que sur la théorie et mettent souvent en œuvre des solutions « suffisamment bonnes » qui fonctionnent pour l'instant, mais qui posent des problèmes de maintenance.
Ils sont parfois sur la défensive en ce qui concerne leur formation. Leur documentation et leur travail reflètent parfois leur nature autodidacte, sans les conventions standard que les autres ingénieurs attendent.
10. L'ingénieur Mario Balotelli
L'ingénieur « Balotelli » possède un talent brut et un potentiel extraordinaires qui se manifestent parfois par des solutions parfaites.
Lorsqu'il s'investit pleinement, il peut résoudre d'énormes problèmes en faisant preuve de créativité et en adoptant des approches non conventionnelles.
Très souvent, ces ingénieurs sont chroniquement indisciplinés et imprévisibles. Ils manquent fréquemment les échéances critiques, les réunions et les engagements de sprint.
Ils peuvent créer des tensions inutiles au sein de l'équipe et saper l'autorité de la direction du projet. Les problèmes de comportement constants éclipsent leurs compétences techniques.
Ils introduisent au hasard des modifications de code expérimentales sans consultation de l'équipe et posent des problèmes importants au reste de l'équipe. La direction marche constamment sur des œufs, ne sachant jamais si elle recevra un travail brillant ou un chaos total.
Conclusion
Certains ingénieurs sont des génies créatifs qui voient des solutions que personne d'autre ne voit. D'autres sont des bêtes de somme fiables qui assurent le fonctionnement de l'ensemble du système. Les leaders aident les membres de l'équipe à se développer, tandis que les vétérans apportent une stabilité cruciale.
En tant que manager, il est important de comprendre qu'un ingénieur créatif de niveau Zidane peut avoir du mal à assurer la maintenance quotidienne, tandis qu'un ingénieur de type Kanté veille à ce que tout se passe bien en coulisses.
Il est essentiel de reconnaître les points forts de chaque ingénieur, de leur donner la possibilité de se développer et de les aider à travailler ensemble.
Comme au football, les meilleures équipes ne sont pas composées de superstars, mais de joueurs qui savent se compléter.
Source : Types of software engineers as football players
Et vous ?


Voir aussi :



Vous avez lu gratuitement 5 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.