S'agit-il des signes d'un mauvais développeur ?
Nous sommes en avril 2024, et je me retrouve à réfléchir sur les deux derniÚres semaines de mars qui ont été particuliÚrement stressantes et éprouvantes dans tous les aspects de ma vie. Et ces moments stressants ont impacté la qualité de mon travail au boulot.
Je suis un dĂ©veloppeur Odoo et jâai 7 ans dâexpĂ©riences Ă mon actif. Durant ces annĂ©es, jâai Ă©tĂ© confrontĂ© Ă de nombreux dĂ©fis et projets: chaque projet a Ă©tĂ© une opportunitĂ© de croissance et dâapprentissage.
En tant que dev, nous avons choisi un mĂ©tier Ă©prouvant qui nous oblige Ă apprendre tous les jours et dâavoir une capacitĂ© constante Ă sâadapter et Ă Ă©voluer.
Les défis du développeur
Nous sommes parfois confrontĂ©s Ă des Ă©preuves qui mettent Ă rude Ă©preuve notre force mentale. Nous nous retrouvons parfois Ă remettre en question nos compĂ©tences, Ă douter de notre valeur et pire encore nous sommes souvent convaincu dâĂȘtre nuls. Il est crucial, face Ă de telles situations, de faire une pause, de se ressourcer et de prĂ©venir le burn out.
Mon expérience récente
CâĂ©tait comme si un raz de marĂ©e sâabbatait sur moi. Un problĂšme familial a dĂ©clenchĂ© un niveau de stress considĂ©rable en moi, alors quâau boulot, jâai Ă©tĂ© chargĂ© de reprendre une tĂąche quâun collĂšgue avait commencĂ©e avant de partir en congĂ©.
Cette tĂąche Ă©tait complexe et dans lâurgence, jâai plongĂ© tĂȘte baissĂ©e dans le code sans prendre le temps de clarifier les conditions dâacceptation du ticket, qui nâĂ©taient pas clairement dĂ©finies.
Je lâai prise, jâai relu la documentation et les commentaires y relatifs. Par contre, jâai omis de revoir la tĂąche dans son ensemble et dâanticiper tous les scĂ©narios possibles. Mon principal objectif Ă©tait de le livrer dans le dĂ©lai prĂ©vu, en mâappuyant sur le travail dĂ©jĂ effectuĂ© par mon collĂšgue. Jâai considĂ©rĂ© que ce qui Ă©tait demandĂ© avait Ă©tĂ© implĂ©mentĂ© correctement et quâil ne restait quâun seul point pour terminer ce ticket.
Cependant, aprĂšs avoir implĂ©mentĂ© le dernier point, des retours ont rĂ©vĂ©lĂ© des cas non couverts par les critĂšres dâacceptation qui nâĂ©taient pas mentionnĂ©s dans la description du ticket.
PlongĂ© dans une course contre la montre, je me suis retrouvĂ© entrain de travailler jusquâau petit matin, aprĂšs quâun dĂ©ploiement mal testĂ© ait causĂ© le crash du serveur de test: il sâagissait en effet dâun commit qui avait Ă©tĂ© dĂ©ployĂ© sans ĂȘtre bien testĂ© et sans test unitaire.
AprĂšs lâavoir dĂ©buggĂ©, je me repose un peu et plonge encore la tĂȘte baissĂ© dans les fonctions que jâai Ă©crites avec une seule certitude: jâĂ©tait convaincu que le problĂšme rĂ©sidait dans mon code, sans remettre en question le travail de mon collĂšgue.
Subitement, je suis coincĂ© entre les messages du chef de projet et mon code et je sens que le client nâest pas content : une tĂąche Ă livrer en 2 jours dâaprĂšs les estimations vient de faire une semaine. Nous sommes vendredi, jâarrĂȘte et reprends la semaine qui suit.
Quant au problĂšme familial, il nâest toujours pas rĂ©solu, je suis stressĂ©, je dors peu, je suis plongĂ© dans un code avec une contrainte de temps et passe encore une autre semaine sans solution.
Au cours de la deuxiĂšme semaine, je discute avec 2 autres collĂšgues, on travaille ensemble mais lâorigine du bug reste toujours inconnu. Je suis dĂ©boussolĂ© et mon moral est au plus bas.
Le lundi qui suit, jâai dĂ©cidĂ© avec lâappui du chef de projet, de mâĂ©loigner temporairement du projet pour prĂ©server ma santĂ© mentale. Nous sommes donc Ă la troisiĂšme semaine, jâai concentrĂ© mon Ă©nergie sur dâautres tĂąches et trouver un dĂ©but de solution Ă mes problĂšmes personnels.
Et concernant le ticket en cours, je demande Ă un troisiĂšme collĂšgue de le refaire mais hĂ©las, il nâa que 3 jours avant dâaller en congĂ©s et travaille dĂ©jĂ sur un autre projet, en plus du mien. Par consĂ©quent, le problĂšme nâest toujours pas rĂ©solu.
Au dĂ©but de la quatriĂšme semaine, je dĂ©cide de reprendre le ticket qui vient de passer 3 semaines sans ĂȘtre rĂ©solu et repart de zĂ©ro. Jâai remis en question chaque aspect de la tĂąche, de sa description initiale jusquâau code Ă©crit, en collaborant Ă©troitement avec le chef de projet: je prends une feuille et un stylo et repense la solution au ticket entiĂšrement et BAM! Cette approche a portĂ© ses fruits : en dix heures de travail intense, jâai abouti Ă une solution viable que jâai pu livrer le lendemain.
Le ticket, aprĂšs trois semaines dâimpasse, a enfin Ă©tĂ© rĂ©solu, et apporte un soulagement bien mĂ©ritĂ© Ă tout le monde.
Les leçons à retenir
Cette expĂ©rience que jâai vĂ©cu rĂ©cemment mâa permis de tirer quelques leçons afin de toujours fournir un travail de qualitĂ©, notemment :
-
Connaitre gĂ©rer son stress : Le stress est une bonne chose, câest une alerte qui est passĂ© Ă lâorganisme pour dire tiens, fait attention, quelque chose ne vas pas. Ainsi, prendre du recul et gĂ©rer le stress est essentiel pour maintenir des performances optimales au travail. Il faut alors reconnaĂźtre les signes de stress et prendre des mesures pour y remĂ©dier afin dâĂ©viter des erreurs coĂ»teuses et prĂ©venir le burnout.
-
Lâanalyse approfondie des tĂąches : La confiance nâexclut pas la mĂ©fiance. Ainsi, avant de plonger dans le code, il est crucial de prendre le temps nĂ©cessaire pour comprendre pleinement les exigences et les conditions dâacceptation dâune tĂąche ou dâun ticket. Cela permet dâĂ©viter des erreurs coĂ»teuses et de garantir la qualitĂ© du travail qui sera livrĂ©.
-
Ătre mĂ©thodique : Adopter une approche mĂ©thodique et structurĂ©e est indispensable pour rĂ©soudre efficacement les problĂšmes complexes. Ceci dit, il faut prendre le temps de planifier et de concevoir une solution complĂšte pour obtenir des rĂ©sultats plus rapides et fiables.
-
Communiquer et collaborer : Il faut Ă©viter de se renfermer dans son cocon. Il ne faut jamais hĂ©siter Ă solliciter lâaide et les conseils des collĂšgues en cas de difficultĂ©s: câest le seul moyen pour Ă©viter les goulots dâĂ©tranglement.
En conclusion, cette expĂ©rience mâa rappelĂ© lâimportance cruciale de la gestion du stress et de lâapproche mĂ©thodique lorsquâon est dĂ©veloppeur. En tirant les leçons de ces dĂ©fis, on est prĂȘt en tant que dĂ©veloppeur, Ă affronter tous les obstacles et Ă fournir un travail de qualitĂ©.
Si tu as aussi rencontrĂ© ces difficultĂ©s, sache que tu nâes pas un mauvais dĂ©veloppeur : nous sommes humains et câest tout Ă fais normal de faire des erreurs. Il suffit juste dâen tirer des leçons.