Quels sont les moyens de devenir un meilleur ingénieur logiciel ?


Je suis moi-même assez intéressé par ce sujet.

Avouez que je ne suis pas un ingénieur de métier. Je suis écrivain et marketeur, mais je travaille avec de nombreuses équipes logicielles et j'écris beaucoup sur la productivité, les performances et la science du développement.


Récemment, j'ai posé essentiellement la même question aux Rangers ALM de Microsoft.

Je voulais savoir : Comment les développeurs mesurent-ils leurs performances ? Et, que peuvent-ils faire pour améliorer leurs capacités ? À partir de leurs commentaires, j'ai écrit un article assez complet sur le sujet.

Comment devenir un meilleur développeur de logiciels : Un manuel sur les performances personnelles

Comme les autres réponses l'ont noté, l'un des aspects les plus importants est certainement la science ou la théorie derrière l'informatique et l'ingénierie. De nombreux programmeurs compétents manquent d'une compréhension profonde des principes sous-jacents qui font que le code fonctionne (ou pas).

Cela devient de plus en plus un obstacle à votre développement au fur et à mesure que vous avancez dans votre carrière.

main-qimg-a9aff04592d1f78166e14ab05756ed14

Mais l'autre partie de l'équation est, essentiellement, d'apprendre à mieux analyser et résoudre les problèmes. Il s'agit d'une compétence largement applicable, mais elle est particulièrement importante pour les développeurs de logiciels.

Il y a quelques suggestions spécifiques qui sont venues de l'équipe de Ranger :

  1. Lire et apprendre -. Astuce évidente
  2. Pratiquer l'alternance entre la pensée focalisée et la pensée diffuse
  3. Démarrer et construire des projets secondaires
  4. Lire le code des autres
  5. Utiliser l'entrelacement pour apprendre de nouveaux concepts
  6. Enseigner aux autres ce que vous avez appris. apprendre aux autres ce que vous avez appris
  7. Comprendre vos propres forces et faiblesses
  8. Apprendre les forces/faiblesses de l'équipe
  9. Définir votre rôle au sein de l'équipe

L'un des conseils les plus révélateurs que j'ai reçu enL'un des conseils les plus révélateurs que j'ai reçus au cours de mes recherches est que *vos* capacités individuelles n'ont finalement pas beaucoup d'importance. Même si vous êtes le meilleur programmeur du monde, la seule façon de vous améliorer vraiment est de comprendre le contexte plus large du travail que vous faites.

Ce qui signifie se concentrer sur le travail d'équipe et la dynamique d'équipe.

Ce qui signifie penser de manière large à la résolution de problèmes avec certaines contraintes. Il y a des utilisateurs avec des capacités limitées. Il y a un temps et un budget limités. Compte tenu de ces paramètres, quelle est la meilleure solution au problème ?

Avoir ce contexte plus large est vraiment important. Il vous aide à prendre de meilleures décisions, plus intelligentes et plus stratégiques.

Plutôt que de foncer sur chaque problème avec vos armes, vous prendrez le temps d'analyser toute la portée du problème, de faire soigneusement le point sur toutes les considérations, puis de prendre une décision éclairée sur la façon d'aller de l'avant.

J'espère que cela vous sera utile. Faites-moi savoir si vous avez l'occasion de consulter le guide!

.