Je suis le développeur principal d'une petite entreprise de logiciels. Au cours des deux dernières années, mon équipe est passée d'un développeur (moi) à un groupe d'environ neuf personnes. La plupart d'entre nous sont des ingénieurs très compétents et expérimentés (plus de 20 ans d'expérience dans la création de logiciels par personne), donc très peu de tenue de main est généralement nécessaire. Nous utilisons Scrum pour gérer nos efforts, et nous faisons généralement beaucoup de choses rapidement avec des exigences écrites minimales.
Au fur et à mesure que l'équipe s'est développée, j'ai atteint le point où il est difficile pour moi de conserver une supervision technique sur l'ensemble du projet tout en écrivant moi-même des quantités importantes de nouveau code, il est donc temps pour moi d'ajuster mon rôle. Comment puis-je me rendre le plus utile à l'équipe lorsque je ne passe plus la plupart de mon temps à développer?
Mon objectif est de permettre à mon groupe de se développer encore plus (c'est-à-dire d'augmenter la vitesse Scrum) en ajoutant plus de développeurs , donc je ne veux pas simplement devenir la "police d'architecture" qui impose ma volonté à l'équipe. En d'autres termes, je veux être le type qui aide les choses à mieux fonctionner / mieux, plutôt que le type qui ralentit les choses en ajoutant une couche inutile de bureaucratie. Pourtant, l'un de nos principaux risques est que les choses deviennent incontrôlables si nous ajoutons plus de personnes sans avoir assez de structure pour nous garder tous sur la même longueur d'onde.
Quelle est la meilleure façon d'atteindre mon objectif?
la source
Réponses:
Il y a probablement une bande que j'oublie, mais c'est le cœur du problème. N'implémentez pas de processus, gérez une partie de ces frais généraux / inefficacités qui se développent naturellement à mesure que la taille de l'équipe augmente.
la source
Je n'aurais aucun problème avec un chef d'équipe capable d'équilibrer les tâches managériales et techniques, mais il est difficile de trouver des personnes qui gèrent bien cet équilibre.
Si je devais choisir entre les deux extrêmes à partir d'un chef d'équipe sur une équipe en pleine croissance ... c'est un choix vraiment difficile mais finalement je pense que je voudrais que le chef d'équipe devienne plus un manager. Dans une équipe importante, vous espérez qu'il y aurait d'autres candidats pour entrer dans le rôle de développeur senior qui pourraient nourrir les nouveaux membres de l'équipe et continuer à faire de gros efforts dans le développement.
Mais dans une équipe en pleine croissance, vous voudrez certainement aussi un bon manager. En fait, avoir une bonne personne avec le titre de gestion est important parce que vous voulez qu'elle ait suffisamment de pouvoir pour prendre de bonnes décisions. Un bon manager a une grande influence sur le bonheur d'une équipe et pour exactement les raisons que vous indiquez; en aidant à les garder productifs - et bon pour vous de penser comme vous êtes. Il y a beaucoup de managers qui ne donnent pas le cul d'un rat.
Je recommanderais quelques autres articles ici aux programmeurs. Bien qu'ils soient davantage axés sur un chef d'équipe que sur un rôle de gestion officiel, ils peuvent aider:
Passer à la direction d'équipe
Comment réussir en tant que développeur principal?
Comment gagner le respect des membres de l'équipe en tant que chef d'équipe?
la source
Je pense que c'est un équilibre de ces traits:
OTOH, l'entretien est un élément important pour trouver la bonne personne, je vous recommande de poser les questions suivantes dans l'entretien:
Le test FizzBuzz est absolument un must, avoir raison ou tort ce n'est pas aussi important que:
la source
inertia of mind
, n'est-ce pas? Après avoir traité des problèmes complexes pendant un certain temps, la plupart d'entre nous ne voient pas de solutions simples pour des problèmes simples.