82 votes

Comment démontrer à la direction que les développeurs médiocres nuisent à l'équipe ?

Je me trouve dans la position précaire de "gérer" une équipe de développeurs dans une petite entreprise. Je dis "gérer" parce que, bien que je répartisse le travail et que je fournisse un retour d'information sur leurs performances, je n'ai aucun recours pour discipliner une personne.

Je ne sais pas quoi faire de certains membres de mon équipe, ils sont incapables de travailler seuls, ont besoin d'un soutien massif et, lorsqu'on les laisse faire, ils font des ravages sur le projet, jusqu'à l'échec. Lorsque l'échec survient, je dois sauver le projet et le pousser (parfois en boitant) vers la ligne d'arrivée.

Ces développeurs manquent non seulement de compétences en matière de concepts de programmation, mais aussi généralement de capacité à formuler une solution à un problème en code. Des choses simples comme l'écriture de boucles sont difficiles pour eux, sans parler de la conception et de la mise en œuvre d'une solution à un problème.

Nous avons essayé la programmation par paire, proposé de payer des cours, acheté des livres, alloué du temps à la formation pendant la journée de travail et même pris des journées entières pour former l'équipe.

L'autre développeur principal et moi-même ne savons pas quoi faire, mais notre productivité est mise à mal par le fait de devoir traiter avec ces personnes au quotidien. La direction nous oblige à leur donner du travail et leur principale plainte est que les choses ne sont pas faites assez rapidement.

Aucun membre de notre équipe de gestion ne travaille directement avec les développeurs, à l'exception de moi-même et de l'autre développeur principal. La direction n'est pas technique et croit que tous les développeurs sont égaux, et que nous avons évidemment besoin de plus de personnes sur ces projets pour les réaliser plus rapidement.

Je suis déjà en train de préparer un document avec des sections de "The Mythical Man Month" et "Code Complete" que j'enverrai à la direction pour espérer illustrer par des statistiques que ce qui nous gêne vraiment, c'est de devoir traîner les gens médiocres dans le cycle de développement.

Quelles sont les autres ressources disponibles ? Livres, articles, conseils généraux, tout ce qui pourrait être utile.

32voto

e-satis Points 146299

C'est drôle que personne ne t'ait dit que tu manquais peut-être de compétences en gestion.

Une fois, je me suis retrouvé à travailler avec des gens qui n'étaient pas capables de coder une boucle après un an et demi de formation. Je les ai formés jusqu'à ce qu'ils soient capables d'utiliser un framework web complet, et cela ne leur a pris qu'un mois.

Peut-être vous devrait recevoir une formation.

Peut-être vous devrait lire un rapport sur vous .

Je ne dis pas ça pour vous attaquer. Pas du tout. Je comprends très bien le problème, car je n'ai pas réussi à gérer des équipes aussi bien dans le passé.

Mais n'esquivez pas la balle, vous êtes le principal responsable de ce qui se passe dans votre équipe, quelle que soit la quantité de littérature sur les bonnes pratiques que vous avez lue dans votre vie.

Dans ce cas, arrêtez de vous plaindre et mettez-vous au travail. Pas en tant que codeur, mais en tant que manager.

Enfin, je peux avoir tort. Peut-être que vous avez fait tout ce qu'il fallait. Dans ce cas, vous pouvez, et devriez probablement, démissionner. Essayer d'empêcher un avion de s'écraser en bougeant les mains est inutile, quelle que soit votre force. Il y a beaucoup d'équipes occasionnelles qui feront des miracles avec vos compétences pour tirer le meilleur parti des leurs.

26voto

Robert Harvey Points 103562

Le problème vient-il d'un manque de compétences ou d'aptitudes, de problèmes d'attitude de la part des programmeurs ou d'une culture d'entreprise qui ne favorise pas une bonne éthique de travail ?

S'il s'agit de compétences, vous savez déjà qu'il y a des choses que vous ne pouvez pas enseigner. Si l'entreprise est disposée à le faire (et il semble qu'elle le soit) et que vous pouvez montrer une amélioration, j'intensifierais la formation et verrais quels développeurs se montrent à la hauteur. Vous devrez licencier ceux qui ne le font pas. Je n'embaucherais pas de nouveaux développeurs tant que vous ne savez pas que vous allez licencier certains de vos développeurs actuels.

S'il s'agit de paresse ou d'autres problèmes d'attitude de la part des programmeurs, vous devrez convaincre votre direction de vous soutenir dans les actions disciplinaires. Documentez tous les problèmes, comme Scott Vercuski décrit. Eliminez progressivement les programmeurs qui ne peuvent pas se montrer à la hauteur. Faites savoir aux programmeurs restants qu'ils sont censés apprendre les bonnes techniques de programmation et les meilleures pratiques, et les utiliser.

Faites des revues de code, si vous ne le faites pas déjà. Il existe de nombreuses ressources qui expliquent comment le faire correctement. Il ne s'agit pas d'un concours de cris, mais plutôt de séances de stratégie visant à produire les résultats souhaités. Discutez du code. Comment peut-il être amélioré ? Rédigez un nouveau code lors de la révision, si nécessaire.

Si la direction est le problème, dites-lui qu'elle est le problème et montrez-lui comment elle peut le résoudre. Mais vous devez être éloquent et persuasif. Vous devez être leur plaidoyer. Rédigez un article sur le problème. Faites une présentation et montrez-la. Faites appel aux motivations du profit.

Enfin, soyez le meilleur leader que vous puissiez être pour vos collaborateurs. Aidez-les. Faites en sorte qu'ils ne soient pas bloqués afin qu'ils puissent faire leur travail. Une partie de votre travail consiste à protéger vos collaborateurs des politiques de la haute direction et à maintenir un environnement de travail décent, afin qu'ils puissent se concentrer sur leur travail. En d'autres termes, faites en sorte que vos collaborateurs puissent vous faire confiance.

15voto

Scott Vercuski Points 2825

La documentation est votre plus grande ressource... un de mes anciens directeurs m'a dit "Si vous ne l'écrivez pas, cela ne s'est pas produit". Si vos développeurs vous donnent une estimation écrite du temps nécessaire à l'accomplissement d'une tâche et qu'ils manquent constamment (et gravement) ces délais, cela doit être documenté.

Avez-vous une sorte de système de comptabilisation du temps ? ou les développeurs enregistrent-ils leur temps ? S'ils déclarent qu'un problème leur prendra X jours et qu'après X jours, il n'est pas résolu, vous pouvez demander pourquoi il ne l'a pas été.

Si vous mettez soudainement fin à l'emploi d'une personne et que vous ne disposez pas d'une documentation adéquate sur les raisons de ce licenciement, vous risquez d'être poursuivi en justice. Plus vous avez de documentation, plus il devrait être évident pour la direction que les développeurs juniors ne font pas leur travail et devraient être remplacés.

Je vous souhaite bonne chance, j'ai bien peur que vous ne soyez sur une route très difficile.... Je suis passé par là et c'est un processus de longue haleine.

6voto

Jacob G Points 2666

J'ai déjà été dans cette situation et je peux certainement compatir. Ce que j'ai fait, c'est de répartir une petite tâche autonome qui ne devait pas prendre plus de deux jours, à moi ou à un autre développeur senior. Pour cette tâche, j'ai créé une multitude de documents indiquant comment la solution devait être mise en œuvre, les modifications à apporter à la base de données, etc. Je m'asseyais ensuite avec le développeur, lui donnais un aperçu de haut niveau de la tâche et la lui assignais avec un délai d'une semaine. À la fin de la semaine, vous avez quelque chose de tangible auquel vous pouvez comparer leur travail : A-t-il respecté les spécifications ? Quel est leur degré d'avancement ? Combien de bogues l'AQ a-t-elle trouvé ? Ont-ils brisé le processus de construction ou de rupture de quelque manière que ce soit ?

Une fois cela fait, en supposant qu'ils aient échoué, vous avez une réunion directe et pointue avec eux expliquant comment ils ne remplissent pas leurs fonctions. Faites la même chose une ou deux fois de plus et, tant que vous documentez et communiquez en haut de la chaîne, vous devriez être en mesure de les pousser dehors. C'est peut-être dur, mais il semble que vous ayez besoin que les gens s'engagent et que vous n'ayez pas les bonnes personnes pour le faire.

Assurez-vous également de pouvoir participer aux entretiens avec les nouveaux candidats.

5voto

Paul Nathan Points 22910

Mon conseil est le suivant :

Si vous êtes un manager, alors vous doit avoir les droits qui vont avec votre responsabilité. Ces droits incluent la discipline des personnes sous vos ordres. Si la direction refuse de vous accorder ces droits, refusez d'assumer cette responsabilité.

Vous ne devez pas nécessairement être aussi catégorique envers vos supérieurs, mais c'est l'essentiel de ce qui doit se passer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X