Après des années de pratique, je me sens enfin comme un programmeur compétent. J’ai décidé de partager quelques conseils qui m’auraient aidé à progresser plus rapidement. Ces conseils sont personnels et peuvent ne pas convenir à tout le monde, mais ils ont été précieux pour moi.
Il est fréquent de se retrouver dans une équipe où il est facile de commettre des erreurs, mais où personne ne cherche à rendre ces erreurs plus difficiles à commettre. Par exemple, lors de mon travail sur le développement iOS, nous utilisions CoreData et nous abonnions à des changements dans le magasin dans plusieurs vues. Le rappel d’abonnement se faisait sur le même fil que le changement était déclenché. Parfois, c’était le fil principal, parfois un fil secondaire. Or, dans le développement iOS, vous ne pouvez effectuer des mises à jour de l’interface utilisateur que sur le fil principal. J’ai pris l’initiative de corriger ce problème en quelques minutes, ce qui a éliminé toute une série de plantages et a allégé la charge mentale.
Il y a toujours un compromis entre la vitesse de mise en œuvre et la confiance que vous avez dans la correction. Vous devez vous demander : dans mon contexte actuel, est-il acceptable de livrer des bogues ? Si la réponse à cette question n’a pas d’impact sur votre façon de travailler, vous êtes trop inflexible. Par exemple, lors de mon premier emploi, je travaillais sur des projets de traitement de données qui avaient des systèmes en place pour retraiter les données rétroactivement. L’impact de la livraison d’un bogue était très faible. En revanche, lors de mon deuxième emploi, je travaillais sur un produit utilisé par des dizaines de millions de personnes, impliquant beaucoup de données financières de grande valeur et des informations personnelles identifiables. Même un petit bogue entraînait une analyse post-mortem. J’ai livré des fonctionnalités à un rythme très lent, mais je pense n’avoir livré aucun bogue cette année-là.
Il est essentiel d’être rapide et compétent dans des tâches telles que le renommage, la définition de types, la recherche de références, etc. Il est important de connaître tous les raccourcis majeurs de votre éditeur, d’être un dactylographe rapide et confiant, de bien connaître votre système d’exploitation, d’être compétent dans l’utilisation du terminal et des outils de développement du navigateur.
Il est souvent utile de remettre en question la complexité apparente d’une tâche. Parfois, ce qui semble difficile à première vue peut être simplifié en examinant de plus près le problème. Il est important de ne pas se laisser submerger par une complexité inutile.
Lorsque vous rencontrez un bogue, ne vous contentez pas de corriger le symptôme, mais cherchez à comprendre la cause profonde du problème. En creusant plus loin, vous pourrez résoudre les problèmes de manière plus durable et acquérir une compréhension approfondie du système.
Parfois, il est crucial d’examiner l’historique d’un projet pour comprendre l’origine d’un bogue. En analysant les changements récents, vous pourrez identifier les causes sous-jacentes des problèmes rencontrés.
Il est essentiel de trouver un équilibre entre la rapidité de développement et la qualité du code. En privilégiant parfois la vitesse, vous pourrez apprendre de vos erreurs et améliorer vos pratiques de développement.
Il est important de mettre en place des outils et des méthodes pour faciliter le processus de débogage. En investissant du temps dans la mise en place de bonnes pratiques, vous gagnerez en efficacité et en sérénité lors de la résolution des problèmes.
Il est essentiel de savoir quand demander de l’aide à ses collègues pour éviter de perdre du temps sur des problèmes qui pourraient être résolus plus rapidement en collaborant. Ne sous-estimez pas la valeur de l’expérience et du savoir-faire de vos collègues.
Pour réussir dans un environnement professionnel exigeant, il est essentiel de maintenir une cadence de livraison soutenue. En identifiant les obstacles à la livraison rapide et en mettant en place des processus efficaces, vous pourrez optimiser votre productivité et atteindre vos objectifs plus rapidement.
Merci de m’avoir lu ! Si vous avez des questions, des commentaires ou simplement envie de dire bonjour, n’hésitez pas à m’envoyer un e-mail à [email protected]