L'illusion de l'ingénieur principal : Ce que je pensais et ce que j'ai appris, par Mensur Durakovic
En tant qu'ingénieur débutant, je me faisais des idées folles sur les ingénieurs confirmés.
Je pensais qu'ils étaient comme des super-héros du codage - capables de déboguer n'importe quel problème, connaissant toujours la prochaine étape, et des encyclopédies technologiques ambulantes. J'avais l'habitude de penser que le fait de gravir les échelons de votre carrière jusqu'à devenir senior vous permettrait d'acquérir des connaissances illimitées et d'avoir une vie professionnelle agréable.
Je me souviens avoir observé mon mentor, lors de mon premier emploi, résoudre un problème Java avec lequel je me débattais. Sa façon de naviguer dans le code et les commandes de terminal me faisait penser au gars "Let me solo her" qui battait Malenia dans Elden Ring, tandis que je me laissais aller à le regarder se battre.
Cela m'a beaucoup impressionné. Je voulais être aussi rapide et efficace.
Aujourd'hui, plus de 9 ans après, la réalité est devenue plus claire : progresser dans sa carrière ne consiste pas seulement à maîtriser la ligne de commande. Il s'agit de relever un tout nouvel ensemble de défis complexes.
Bien sûr, vous deviendrez plus rapide pour corriger les bogues de base, mais ce n'est pas ce à quoi vous serez confronté la plupart du temps. Pensez-y de la manière suivante : à mesure que vos compétences se développent, la complexité des problèmes que vous devez résoudre augmente également.
Pour être clair, il ne s'agit pas d'éclater votre bulle. Il s'agit plutôt d'un avertissement sur ce qui vous attend. Les ingénieurs seniors ne sont pas des créatures mythiques capables de produire un code parfait en dormant.
Voici quelques idées fausses que je me faisais des ingénieurs seniors lorsque j'ai commencé mon parcours.
1) Les ingénieurs seniors ne travaillent que sur des technologies de pointe et réalisent tous les projets intéressants.
De nombreux ingénieurs débutants rêvent de jouer avec les derniers outils brillants toute la journée. En réalité, en tant que senior, vous serez souvent plongé jusqu'aux genoux dans du code hérité.
Nous parlons ici de systèmes qui existent depuis plus longtemps que certains de vos collègues, remplis d'années de logique commerciale, de données utilisateur et de bizarreries qui permettent de garder les lumières allumées.
Votre mission ? Devenir un archéologue du code.
Vous devrez fouiller dans ces artefacts numériques, comprendre pourquoi ils piquent des crises et trouver des moyens de les rendre compatibles avec les exigences modernes. Et n'oubliez pas la règle d'or : ne rien casser.
Ça a l'air passionnant, non ?
Ce n'est pas toujours une partie de plaisir, mais c'est l'essentiel de la vie d'un senior. La plupart des logiciels existants ne sont pas des projets nouveaux, mais une mosaïque de systèmes hérités qui réclament une refonte (qui restera probablement dans le carnet de commandes jusqu'à la mort de l'univers).
Vous ferez donc beaucoup de travail pour soutenir le code que vous avez.
2) Les seniors réécrivent des bases de code entières sur un coup de tête
En tant qu'ingénieur junior, il m'arrivait souvent de regarder des systèmes existants et de me dire : "Je pourrais faire ça tellement mieux !".
Je lançais immédiatement des suggestions comme un canon en liberté. Lorsque vous êtes nouveau, chaque problème semble avoir besoin de votre nouveau marteau étincelant.
Cet empressement n'est pas mauvais - c'est ainsi que notre secteur évolue. De plus, c'est un excellent moyen de commettre des tonnes d'erreurs qui vous apprendront que tout n'a pas besoin d'un marteau. Et peut-être avez-vous besoin de plus d'outils dans votre trousse.
Mais voici le secret de l'ingénieur principal : les grands changements nécessitent plus qu'un bon code.
Vous devez apprendre à "parler aux parties prenantes", c'est-à-dire à communiquer vos idées de manière à ce qu'elles trouvent un écho auprès des responsables de l'entreprise. Familiarisez-vous avec les budgets et la planification des ressources. Plus le projet est important, plus vous devrez faire d'acrobaties, mais le jeu en vaut la chandelle.
Au fur et à mesure que vous progressez, vous vous rendez compte qu'un changement significatif ne consiste pas seulement à écrire un code propre. Il s'agit de rédiger des propositions qui cochent toutes les cases :
- excellence technique
- objectifs commerciaux
- contraintes budgétaires
En résumé : Construire des choses sympas est amusant, mais construire des choses sympas qui profitent à l'entreprise ? C'est là que le bât blesse.
3) Les seniors écrivent du code toute la journée
Imaginez que les ingénieurs seniors passent toute leur journée dans VS Code, à écrire des lignes comme si leur corps était un vaisseau pour qu'une entreprise trouve une adéquation avec le marché.
Si seulement c'était le cas.
La réalité ? Le codage n'est qu'une part de la pizza technologique. Bien sûr, ils codent toujours, mais ils sont pris en sandwich entre d'autres responsabilités.
Pensez aux estimations, aux séances de conception de l'architecture, aux revues de code, aux entretiens et aux réunions. Viennent ensuite les séances de débogage et de mentorat pour éviter les catastrophes du type "ça marche sur ma machine", en traduisant le jargon technique en langage humain pour les parties prenantes. Il ne faut pas oublier la lutte contre les incendies lorsque la production décide de piquer une crise.
Les seniors sont plus comme des chefs d'orchestre, orchestrant une symphonie de poussées Git, de pings Slack et de jonglages de tickets Jira.
La prochaine fois que vous verrez un senior fixer intensément son écran, il est peut-être en train de coder. Ou ils se demandent peut-être comment expliquer à la direction que nous ne pouvons pas simplement "ajouter de l'IA" pour tout résoudre.
4) Les seniors ne font jamais d'erreurs
Si vous pensez que les seniors n'introduisent jamais de bogues, vous vous trompez.
Les ingénieurs seniors ne sont pas des êtres mystiques dotés de pouvoirs infaillibles en matière de code. Ce sont des humains, et les humains font des erreurs - parfois de manière spectaculaire.
La différence ?
Ils ont tout vu, depuis les erreurs ponctuelles qui font tomber des systèmes entiers jusqu'à l'exécution accidentelle de requêtes SQL dans un environnement de production au lieu d'un environnement d'essai.
Ils ne sont pas à l'abri d'une défaillance cérébrale, d'une faute de frappe ou du syndrome occasionnel du "ça marchait sur ma machine". Mais le plus important, c'est que les seniors sont plus rapides à repérer et à réparer leurs erreurs.
Ils ont un sixième sens pour détecter les problèmes potentiels et disposent d'une boîte à outils de débogage. Alors oui, les seniors font des erreurs. Ils s'améliorent en transformant ces moments "oh merde" en expériences "leçons apprises".
N'oubliez pas qu'il ne s'agit pas de ne jamais se tromper. Ce qui compte, c'est la rapidité avec laquelle vous pouvez résoudre le problème.
5) Les seniors prennent toutes les décisions techniques
Je pensais que les seniors étaient les magiciens tout-puissants des décisions techniques.
L'idée qu'ils claquent des doigts et que toute l'équipe passe soudainement de React à Vue est totalement erronée.
En réalité, les décisions techniques ressemblent davantage à un jeu multijoueur chaotique de League of Legends. Les seniors sont peut-être les grands maîtres, mais ils jouent toujours avec les chefs de produit, les autres ingénieurs, les parties prenantes de l'entreprise et ce type qui insiste sur le fait que l'IA résout tout.
Ils naviguent dans un labyrinthe de contraintes budgétaires, de limitations des systèmes existants et d'arguments du type "mais nous avons toujours fait comme ça".
Bien sûr, l'opinion des ingénieurs seniors a du poids, mais elle n'est pas absolue. Parfois, ils sont mis en minorité par les autres membres de l'équipe.
En réalité, les seniors sont plutôt des diplomates de la technologie, qui négocient entre les solutions idéales et les réalités pratiques tout en essayant d'empêcher leur équipe de réinventer la roue.
6) Les seniors sont des encyclopédies ambulantes
Vous pensez que les seniors ont toutes les réponses ?
Ce n'est pas seulement faux, c'est carrément dangereux pour votre croissance.
La technologie évolue à une vitesse vertigineuse - de nouveaux algorithmes, cadres et mots à la mode apparaissent plus rapidement que les cadres JavaScript.
Prétendre tout savoir, c'est comme dire que vous avez terminé l'internet.
Vos pouvoirs de senior ne consistent pas à avoir un cerveau rempli de faits. Il s'agit plutôt de.. :
- prospérer dans la zone "Je n'ai aucune idée de ce que je fais".
- Poser les bonnes questions pour améliorer votre compréhension
- Savoir comment chercher sur Google ou demander à ChatGPT
C'est cool de dire "je ne sais pas" ou "creusons un peu plus".
La technologie est comme l'univers - en constante expansion et le plus souvent mystérieuse. Votre travail consiste à résoudre des problèmes, pas à être un Stack Overflow ambulant.
Considérez-vous comme un aventurier chevronné dans la jungle technologique.
Vous ne connaissez peut-être pas toutes les plantes et tous les animaux, mais vous avez les compétences nécessaires pour naviguer, survivre et peut-être même découvrir quelque chose de nouveau en chemin.
7) Les seniors n'ont pas besoin de demander de l'aide
Vous pensez que les seniors sont des loups solitaires qui n'ont jamais besoin d'aide ? Détrompez-vous.
Même les ingénieurs les plus expérimentés ne sont pas à l'abri d'un moment occasionnel où ils se demandent ce que fait ce code. Savoir quand demander de l'aide est un superpouvoir pour les seniors. Il ne s'agit pas d'avoir toutes les réponses. Il s'agit de savoir comment les trouver.
Qu'il s'agisse de puiser dans le cerveau collectif de votre équipe, de chercher dans les messages Slack, de demander à ChatGPT, de plonger dans d'obscurs problèmes GitHub ou d'invoquer la sagesse ancestrale de cet ingénieur qui travaille dans l'entreprise depuis toujours, les seniors excellent dans la résolution de problèmes en tirant parti de toutes les ressources disponibles.
Ils n'ont pas peur d'admettre qu'ils sont bloqués, car ils savent que la collaboration permet souvent de trouver de meilleures solutions.
Après tout, dans le monde de la technologie, « Je ne sais pas, trouvons une solution ensemble » est souvent la chose la plus intelligente que l'on puisse dire.
8) Devenir senior n'est qu'une question d'années d'expérience.
Vous pensez que l'ancienneté se résume à accumuler des années comme des commits git ?
Détrompez-vous.
Bien sûr, le temps passé dans les tranchées est important, mais il ne s'agit pas seulement de savoir depuis combien de temps vous codez - il s'agit de savoir ce que vous avez appris en cours de route.
Devenir ingénieur senior, c'est un peu comme monter en grade dans un jeu de rôle. Vous avez besoin d'un mélange de compétences adéquates, et pas seulement d'XP.
Nous parlons ici de
- compétences pointues en matière de résolution de problèmes
- capacité d'expliquer une technologie complexe à des non-techniciens sans leur faire perdre la tête
- sagesse architecturale
- compétences en matière de gestion du temps
- compétences en matière de mentorat qui transforment les ingénieurs débutants en bons ingénieurs.
Vous pouvez passer une décennie à écrire "Hello World" dans différents langages, mais cela ne fera pas de vous un senior. Ce qui compte, c'est l'impact et la résolution de problèmes importants.
J'ai rencontré beaucoup de "seniors" de ce type, avec plus de 10 ans d'expérience, mais lorsqu'il s'agit de l'impact qu'ils ont, certains ingénieurs moyens ou même juniors les surpassent.
Ainsi, bien que les années d'expérience soient agréables à avoir, elles ne suffisent pas à elles seules. La véritable ancienneté est liée à l'amélioration continue de vos compétences, et pas seulement à votre âge.
Si vous stagnez dans vos connaissances et vos compétences, le temps vous écrasera.
9) L'ancienneté signifie qu'il n'y a plus d'apprentissage
Attention : la charge de travail ne diminue pas, elle mute et votre capacité d'apprentissage doit s'adapter. En tant que senior, vous n'êtes pas seulement responsable de vos tâches.
Ce bogue bloque-t-il deux autres ingénieurs ? Oui, c'est maintenant votre problème. Votre salaire est peut-être plus élevé, mais votre liste de responsabilités l'est tout autant.
Le rêve de se détendre et de se relaxer en tant que senior ? Il s'agit plutôt d'un fantasme.
Bien sûr, vous avez davantage voix au chapitre dans votre travail, mais cette liberté est assortie de conditions. Vous êtes maintenant un artiste de cirque qui fait tourner des assiettes sur des poteaux - et ces assiettes sont votre équilibre entre vie professionnelle et vie privée.
Mon conseil ?
Améliorez vos compétences en matière de gestion du temps comme vous le feriez pour une requête de base de données. Apprenez à déléguer comme un pro. Et n'oubliez pas que votre santé et vos relations sont aussi importantes que n'importe quel déploiement de production.
Être un ingénieur senior, ce n'est pas travailler moins. Il s'agit de travailler plus intelligemment et de savoir quand débrancher.
10) Les seniors sont les travailleurs les plus importants de l'entreprise
Notre secteur évolue plus vite qu'une balle. La sécurité de l'emploi n'est donnée à personne.
Vous êtes peut-être le seul à pouvoir maîtriser cet ancien système. Mais que se passe-t-il si l'ensemble du projet est supprimé ? Soudain, vos compétences "indispensables" sont aussi utiles qu'une disquette.
Les postes à responsabilités comportent certains avantages, mais l'invincibilité n'en fait pas partie.
Les entreprises sont soumises à toutes sortes de pressions - montagnes russes économiques, revirements stratégiques et fusions qui donnent à "The Game Of Thrones" un air paisible. Lorsque les dirigeants commencent à réclamer des marges plus élevées, même les ingénieurs les plus chevronnés peuvent se retrouver dans la zone de danger.
La technologie est l'un des rares domaines de travail où rester dans la tendance n'est pas seulement agréable - c'est une question de survie.
Il n'est pas nécessaire d'apprendre tous les nouveaux frameworks qui apparaissent sur Hacker News. Mais avoir une idée de ce qui existe ? C'est le gilet de sauvetage de votre carrière.
Adoptez l'état d'esprit "toujours en train d'apprendre". C'est votre meilleure défense contre les coups de théâtre de l'industrie. Le fait d'être le seul à connaître COBOL peut vous donner l'impression d'être spécial, mais cela n'incitera pas vraiment les recruteurs à frapper à votre porte.
Rappelez-vous : dans le domaine de la technologie, l'adaptabilité l'emporte toujours sur l'ancienneté. Restez curieux, restez flexible, et gardez peut-être votre CV impeccable, juste au cas où.
Source : "The Senior Engineer Illusion: What I Thought vs. What I Learned"
Et vous ?
Quel est votre avis sur le sujet ?
Voir aussi :
Plus de 20 000 offres d'emploi de Développeur ou en Informatique
10 vérités difficiles à avaler que l'on ne vous dira pas sur le métier d'ingénieur logiciel, par Mensur Durakovic, ingénieur logiciel
Boostez votre carrière dans le développement de logiciels grâce à ces 10 compétences essentielles, par Mensur Durakovic
Au-delà du battage médiatique : Mes réflexions honnêtes sur l'IA générative par Mensur Durakovic
Partager