7 conseils pour un développeur d'expérience personnelle



Bonjour à tous!



Je pense que cet article sera utile pour les débutants dans le monde informatique. Pour les développeurs chevronnés, de nombreux conseils peuvent sembler évidents. Mais j'espère qu'eux aussi pourront apprendre quelque chose de nouveau et d'utile pour eux-mêmes.



1. Essayez de vous immerger dans le processus métier



Dans l'environnement de développement agile d'aujourd'hui, il est primordial de comprendre le fonctionnement d'un processus métier. Une compréhension approfondie du produit en cours de développement vous permet de concevoir correctement l'architecture de l'application et de sélectionner la pile technologique appropriée. De plus, les représentants des entreprises ont apprécié l'apparence du terme «développeur de produit». Et maintenant, le rôle d'un développeur suppose non seulement la présence de compétences techniques développées, mais aussi une certaine façon de penser: lorsqu'un développeur prend part aux discussions sur les produits, participe à la formation d'un plan de développement produit et surveille l'impact des versions sur les performances de l'entreprise. Bref, il «enracine» le produit.



Aujourd'hui, l'approche produit est omniprésente. Et afin de suivre les réalités modernes, il est important de comprendre comment fonctionne l'entreprise dans laquelle vous développez un produit logiciel.



2. Utilisez un vocabulaire unifié



L'absence d'une terminologie unifiée dans un projet peut entraîner l'effet d'un téléphone cassé, lorsque la sortie ne donne pas à l'entreprise exactement ce qu'elle attendait du développement. Ou lorsque les développeurs nomment la même entité commerciale différemment dans leur code, ce qui peut entraîner des erreurs potentielles et une prolifération de la base de code. Par conséquent, le prochain point important, je considère la compilation et l'utilisation d'une terminologie uniforme dans le projet. Et pas seulement dans la communication, mais aussi dans le code.



Lors du démarrage d'un projet, il est conseillé de fixer les termes commerciaux utilisés dans un seul document - un dictionnaire. À l'avenir, ce document ne sera pas seulement un outil de communication entre les membres de l'équipe. Il deviendra une sorte de contrat d'API entre le développement et le business, entre les exigences métier et le code. De nombreuses méthodologies de développement reposent sur cette idée. Par exemple, Domain Driven Design . L'utilisation du dictionnaire crée l'effet d'un espace d'information unique pour tous les membres de l'équipe, où chacun se comprend parfaitement. Et cela vous permet également de réduire considérablement le seuil d'entrée dans le projet pour les nouveaux membres de l'équipe.



3. Formez des accords d'équipe



Le problème des discussions dans les commentaires de pull-request est toujours aigu. À un moment donné, dans l'une des équipes, nous avons même développé une règle selon laquelle sous un commentaire du critique, il ne devrait pas y avoir plus de cinq messages. Sinon, la discussion a été considérée comme glissant vers la démagogie, l'aggravation des relations entre les membres de l'équipe et l'utilisation improductive du temps de travail. Et le manque d'accords de commandement est à blâmer.



Avant de commencer le développement, je vous recommande vivement d'adopter des accords généraux sur la base desquels le travail de l'équipe sera construit à l'avenir. Ici, je veux dire l'architecture du projet, le style de codage, la taille des classes et des méthodes autorisées, le calendrier des révisions de code et d'autres points que vous trouvez importants pour votre équipe. Car sans effectuer cette procédure à l'avance, vous rencontrerez encore et encore le même type de sujets de discussion dans les commentaires.



Et là encore je voudrais évoquer mon expérience. Lorsque nous avons introduit les conventions d'équipe, nous n'avons vraiment examiné que l'implémentation de la fonctionnalité lors de la révision du code. Et le code à un moment donné a commencé à donner l'impression d'avoir été écrit par une seule personne. Et surtout, les relations au sein de l'équipe se sont améliorées, car il n'y avait pratiquement aucune base de conflit.



Naturellement, tous les accords sont difficiles à garder à l'esprit. Et beaucoup de choses peuvent être automatisées grâce à l'utilisation de linters, de préhooks, de rappels automatiques et d'autres outils auxiliaires.



4. Donnez et recevez des commentaires réguliers



Ne sous-estimez pas la cérémonie de rétroaction. Essayez de le partager avec vos collègues aussi souvent que possible. Après tout, il n'est pas toujours possible de regarder objectivement le travail effectué et de tirer les bonnes conclusions. Chacun de nous a une expérience unique, et à travers son prisme peut donner des conseils importants qui, peut-être, deviendront la base de votre développement futur.



Le bon feedback est toujours une zone de croissance pour un développeur. Et la rétroaction opportune est la «colle d'information» qui aide à unir l'équipe et à la protéger de la discorde.



5. S'en tenir à une approche systématique



Essayez de toujours vous en tenir à vos accords et aux méthodologies de développement choisies. Si vous décidez de couvrir les fonctionnalités avec des tests, couvrez toujours. Si vous décidez d'exécuter une démo pré-version, faites-le toujours. Si la validation directe dans une branche de publication est interdite, alors elle est interdite à tout le monde. Cela apportera cohérence et ordre aux actions de votre équipe, et assurera également notre bien-aimé «peut-être» contre nous tous.



6. Utiliser des méthodologies de gestion du temps



Pour augmenter l'efficacité personnelle et l'utilisation rationnelle du temps de travail dans ma pratique, j'essaie d'adhérer à la méthodologie de gestion du temps. Dans mon cas, c'est Pomodoro . Bien sûr, vous avez le droit de ne pas vous attarder sur mon choix. Mais en général, contrôler le temps et décomposer les tâches au cours de la journée de travail vous permet d'être plus concentré et productif en éliminant les distractions et en maximisant la concentration sur la tâche en cours.



En outre, la réalisation de chaque tâche produit une libération de sérotonine à court terme et un sentiment de satisfaction. À la fin de la journée, vous pouvez consulter la liste des tâches fermées, analyser et réfléchir à ce qui peut être amélioré à l'avenir pour obtenir de meilleurs résultats. Un tel rétro personnel à la fin de la journée.



7. Attention au burn-out



Il y a des jours où nous sommes tellement passionnés par notre travail que nous oublions le temps de repos. Parfois, nous pouvons nous permettre de faire des «heures supplémentaires» la nuit pour atteindre rapidement nos objectifs. Cependant, dans de tels moments, nous devons nous rappeler que nous empruntons cette efficacité et cette productivité instantanées au futur.



Être dans ce mode pendant une longue période entraîne une perte totale ou partielle d'efficacité au travail en raison de l'épuisement émotionnel et physique croissant. En d'autres termes, cela conduit à l'épuisement professionnel. La défense psychologique du cerveau agit en réponse à un stress prolongé afin de conserver les ressources de l'organisme.



Vous devez pouvoir vous arrêter à temps et ajuster votre régime pour éviter cela. Normalisez votre routine de sommeil et de repos, mangez sainement, essayez de passer à votre passe-temps préféré et n'oubliez pas de vous promener au grand air.



Merci pour l'attention. Bonne chance à tous!



All Articles