Question:
Comment gérer un développeur qui a de faibles compétences mais avec qui je m'entends bien?
Mik378
2018-01-03 14:31:30 UTC
view on stackexchange narkive permalink

Je suis Tech Lead depuis 4 mois, en tant que Freelance, pour un client final.

L'un de "mes" développeurs a de très faibles compétences et, malgré un temps considérable passé à enseigner et l'aider, je n'ai remarqué aucune amélioration.

Pour une tâche qu'un bon développeur accomplirait en 1 jour, il passe 4 jours et sa solution ne passe jamais le révision du code en un seul coup.

Le problème est que je ne soupçonnais pas un tel manque de compétences / connaissances en programmation au tout début et cela nous a amenés à faire des "blagues" et à bien s'entendre, etc. pour cette période.

Dans quelques heures, je rencontrerai son responsable (Business Dev) pour faire un point sur les développeurs de mon équipe.

Je ne sais pas comment aborder cette interview.

Dois-je dire la vérité? Et donc décevoir sévèrement le développeur? Dois-je le cacher? Et continuer à faire la majorité de son travail pour respecter les délais? Bien sûr, cette deuxième solution est bizarre, mais je suis une sorte de personne sensible et je n'aime pas «tourner ma veste» vers les gens.

Avez-vous vécu ce genre de situation?

Les commentaires ne sont pas destinés à une discussion approfondie;cette conversation a été [déplacée vers le chat] (http://chat.stackexchange.com/rooms/71213/discussion-on-question-by-mik378-how-to-deal-with-a-developer-that-has-pauvre).
Huit réponses:
#1
+70
user44108
2018-01-03 14:44:10 UTC
view on stackexchange narkive permalink

Il vaut mieux être honnête sur les choses. Cacher ou ignorer le problème ne fera qu'empirer les choses à long terme.

Le gars sait probablement qu'il est sous-qualifié / motivé et se sent très probablement mal à ce sujet.

C'est évident que vous voulez l'aider, alors travaillez à le faire. Faites ce que vous feriez avec n'importe quel rôle junior, augmentez les estimations de son travail et essayez de lui offrir du mentorat pour le faire surmonter.

Soyez honnête dans vos commentaires au Business Dev.

Vous avez eu un tête-à-tête avec le développeur, mais il semble qu'il pense qu'il travaille bien. Cependant, il ne répond clairement pas à vos attentes aussi bien que les autres membres de l'équipe.

Vous avez fait ce que vous pouviez pour l'aider, mais cela n'a pas fonctionné. Alors discutez-en avec le Business Dev et voyez quelle résolution vous pouvez trouver. Cela peut entraîner le recrutement d'une nouvelle personne ou d'un PIP.

J'ai déjà passé quelques temps il y a un mois à parler avec le développeur (en tête-à-tête), il m'a révélé qu'il aime travailler dans ce genre d'endroit où «l'excellence» (au niveau de la programmation) est attendue malgré son manque profond decompétences dont il semble être conscient. Je n'ai pas été très stricte lors de cet entretien et j'ai misé sur son potentiel d'amélioration les jours suivants.
Il convient probablement de garder à l'esprit que le développeur d'entreprise sera également conscient de la capacité de ce développeur.Le cacher ou ne pas le mentionner peut finalement sembler étrange.
@Paddy ... et donne l'impression (incorrecte) que l'OP pourrait ne pas être à la hauteur de la tâche d'évaluation des performances.
Les investissements @Mik378 prennent généralement du temps à payer, voire jamais.C'est une décision commerciale comme une autre - peut-être qu'il a juste besoin de plus de temps, ou d'une approche différente ... ou peut-être qu'il gaspille vos ressources.Quand je faisais affaire avec des développeurs médiocres, je ne m'attendais jamais à une amélioration significative pendant plusieurs mois, et à être à la hauteur en moins d'un an ou deux - certaines personnes pourraient vous surprendre (une bonne expérience aide certainement), mais ne le faites pas.N'embauchez pas un gars ignorant en espérant qu'il ira mieux dans un mois ou deux, cela ne vous rend pas service à tous les deux.Les compétences ne sont pas si faciles à obtenir.
#2
+31
Kilisi
2018-01-03 15:50:09 UTC
view on stackexchange narkive permalink

Si vous voulez être leader, vous assumez la responsabilité qui va avec. Protégez votre équipe, mais soyez honnête à ce sujet. À long terme, c'est ce qui convient le mieux à votre carrière.

La meilleure approche est donc factuelle et professionnelle.

Il serait utile que vous ajoutiez également à quoi pourrait ressembler la conversation avec BDev lorsque vous parlez du développeur.
#3
+12
Derek Elkins left SE
2018-01-04 04:05:58 UTC
view on stackexchange narkive permalink

Votre entreprise ne vous paie pas pour être un copain. Le commentaire de Joe Strazzere est implicite qu'être «à la fois» un copain et un chef d'équipe n'est pas une option dans ce cas.

Vous devez être honnête, car vous devez généralement être honnête. Mais en réalité, il y a deux perspectives que vous ne semblez pas considérer qui, pour moi du moins, seraient en elles-mêmes complètement décisives. Surtout le premier.

Premièrement, à quoi cela ressemble-t-il aux autres? En fait, à quoi vous ressemblerait une situation analogue. Disons que votre patron a un autre chef d'équipe avec qui il est "copain", mais dont les performances sont nettement inférieures. Le patron compense cette sous-performance en aidant le «copain» à sortir, en allégeant sa charge et en étant généralement plus laxiste. Que pensez-vous de cette situation? Peut-être pensez-vous que ce n'est pas grave, mais penserez-vous toujours de cette façon si le patron se plaint d'une sous-performance de votre part ou déclare que vous devez travailler plus longtemps pour atteindre les objectifs du service? Peut-être que de telles choses ne vous dérangeraient toujours pas, mais un double standard flagrant dérange beaucoup de gens. Certes, c'est démoralisant pour les autres. 1

Ensuite, mentez-vous ou tentez-vous généralement de garder votre ami dans le même rôle dans l'intérêt de votre ami? Si ce rôle ne leur convient pas, il peut être préférable pour eux de commencer à rediriger leur énergie vers une voie plus productive. Même si cela leur est bénéfique à court terme, que se passe-t-il lorsque vous (ou eux!) Passez à un autre emploi? Soudainement, ils découvrent ce qu'ils pensaient être une performance adéquate, et maintenant ils sont sans emploi et ne peuvent peut-être pas en obtenir un comparable. Peut-être ont-ils déjà ajusté leur niveau de vie au niveau de revenu pour lequel ils ne sont pas qualifiés. Dans ce cas, ils ont peut-être passé des mois ou des années à ne pas se constituer une base stable pour leur carrière.

Et une troisième perspective supplémentaire, pour reprendre ma première phrase: à moins que vous ne considériez les efforts supplémentaires que vous consacrez à votre ami comme non "facturables" (c'est-à-dire que vous travaillez des heures supplémentaires pour compenser ce temps), votre entreprise paie maintenant le coût de deux développeurs, mais obtient moins que la production de deux développeurs. Et vous voulez les tromper activement à ce sujet. C'est contraire à l'éthique. Si vous souhaitez apporter une aide supplémentaire à votre ami, faites-le en dehors du travail.

Pour répondre explicitement à la question du titre: vous devez vous efforcer de traiter ce développeur pendant le travail de la même manière que si vous ne l'aviez pas une relation meilleure que d'habitude avec eux. En particulier, vous devez vous efforcer de traiter ce développeur comme vous le feriez avec n'importe quel autre développeur. Cela inclura probablement un certain degré de mentorat, mais n'inclura certainement pas de faire leur travail pour eux et de mentir sur leurs performances. N'hésitez pas à consacrer autant de temps que vous le souhaitez à aider ce développeur en dehors du travail. Personnellement, je pense que vous devriez donner à ce développeur une évaluation aussi claire et honnête de ses compétences et de ses progrès que possible si vous voulez le mentor. Personnellement, je leur dirais carrément que si la direction me le demande, c'est l'évaluation que je donnerais.

Vous n'avez pas à travailler ensemble pour être amis. (Le message implicite que j'ai lu dans le commentaire de Joe Strazzere est donc erroné; vous pouvez être un ami et un chef d'équipe si vous dissociez travail et amitié. Bien sûr, si votre ami considère l'amitié comme une condition à ce que vous lui fournissiez une aide supplémentaire et que vous vous comportiez de manière contraire à l'éthique, alors peut-être devriez-vous réévaluer si vous voulez cette "amitié".)

1 Dans l'armée américaine, il n'est pas seulement illégal de faire preuve de favoritisme envers ses subordonnés, il est illégal de même créer l'apparence de le faire, même si aucun favoritisme réel ne se produit.

Vous faites un bon point.Les entrepreneurs demandent généralement des prix élevés, l'entreprise ne serait pas ravie que l'argent qu'ils dépensent pour son contrat serve à couvrir un développeur sous-performant effectuant une tâche de base.
#4
+8
Dominique
2018-01-03 17:24:41 UTC
view on stackexchange narkive permalink

Je ne comprends pas votre problème: vous travaillez dans un environnement de programmation, où des révisions régulières sont effectuées. En plus de cela, il y a d'autres tâches à effectuer, comme la planification, les tests, la documentation, ...

Si le gars n'est pas suffisant en programmation, alors il devrait être très intéressant pour lui de faire quelques révisions de ses collègues: comme ça, il apprend à quoi ressemble un bon code, ce qui pourrait être un sérieux avantage.

À propos de ces autres tâches: quand j'ai commencé à programmer, je n'étais pas très bon non plus, ce qui était ( entre autres) à cause d'un problème de personnalité: lorsque j'avais besoin de me concentrer longtemps sur un sujet, je m'ennuyais et par conséquent ma performance chutait. Mon patron m'a confié d'autres tâches (qui étaient ennuyeuses pour lui mais pas pour moi) comme les tests, la documentation, l'assurance qualité (rédaction et mise en place de procédures), ..., et par conséquent mon esprit était régulièrement rafraîchi, ce qui a stimulé mon motivation et enfin toute ma performance.

Quelques réflexions supplémentaires après les premiers commentaires:

  • Travaillez-vous dans un pays où perdre votre emploi est un gros problème?
  • Votre programmeur a-t-il du potentiel ou pas?

Si vous vivez dans un pays où perdre votre emploi signifie avoir d'énormes difficultés à en trouver un nouveau, alors il est normal d'être réticent à le dire le gars est mauvais. Cela vaut également s'il a du mal à trouver un emploi, même dans un pays plus flexible. Dans un autre cas, si trouver un nouvel emploi n'est pas un gros fardeau, il n'y a aucune raison de ne pas dire que le gars fait un mauvais travail.
En plus de cela, il y a la question de savoir si le gars a ou non du potentiel: encore une fois en regardant ma propre expérience, j'ai commencé assez mal, et après six mois, mon patron voulait me licencier (les deux collègues clés de mon département ). Cependant, un collègue a déclaré: "Vous entraînez ce gars depuis six mois maintenant, et vous pensez qu'il est mauvais, ce qui est juste, mais je vois une motivation et des progrès croissants au cours des deux ou trois derniers mois, ce qui me fait croire il a du potentiel. Laissez-le rester encore six mois et à ce moment-là, si la performance n'est toujours pas bonne, alors vous pouvez décider de le licencier. ". En conséquence, mon patron m'a gardé, six mois plus tard, ma performance avait considérablement augmenté et en effet, il s'est avéré être une bonne idée de me garder.

Je n'ai jamais dit qu'il ne participait pas aux révisions avec les autres et je n'ai jamais dit que les tâches qui lui sont assignées ne sont pas variées et agréables.
Il a donc différentes tâches: coder, réviser, tester, documenter, rédiger technique, ... Comme il n'est pas très bon dans les tâches de codage, pouvez-vous vendre à la haute direction qu'il est bon dans les autres (et est-il bonen effet dans ces autres tâches?)?
Si j'embauche un programmeur et en supposant que je paie un salaire de programmeur, je ne le garderais pas à ce taux de rémunération même si j'avais des tâches moindres à faire pour la personne.Cela entrave sérieusement la possibilité d'embaucher un autre programmeur.
#5
+1
Torp
2018-01-04 22:20:42 UTC
view on stackexchange narkive permalink

Réponse différente: avez-vous besoin que tous les membres de votre équipe soient une superstar? Peut-être est-il utile, même s'il est lent, de faire les choses simples pendant que les autres membres de l'équipe font les parties complexes.

Bien sûr, cela dépend aussi du montant qu'il a payé. Et c'est quelque chose dont vous devriez également parler à votre responsable.

#6
+1
Yoshi_64
2018-01-05 04:34:51 UTC
view on stackexchange narkive permalink

Je dirai que j'étais probablement à la place de cet employé à un moment donné. Laissez-moi essayer de répondre à ce qu'ils peuvent vivre de mon expérience.

J'ai été embauché dans un emploi après l'école, et pendant tout mon séjour là-bas, je savais que je manquais quelque chose. Tout d'abord, je n'étais même pas sûr d'obtenir le poste, car en tant que développeur junior, je doutais de mes compétences pour travailler pour une entreprise qui était prolifique dans ce qu'elle faisait, c'était un domaine complètement nouveau pour son industrie.

Avance rapide d'environ 3 mois dans mon travail, je n'étais pas sûr de pouvoir tenir ma tête bien au-dessus de l'eau encore. Moi aussi, j'ai pris plus que ce qui était estimé pour accomplir certaines tâches «simples». Je me sentais tout à fait conscient que j'étais sur le temps emprunté, et en plus d'essayer de respecter les délais, d'apprendre une grande architecture et une base de code, et finalement sur le terrain, j'ai beaucoup fléché. Dans l'ensemble, je soupçonne que votre développeur sait qu'il a du mal.

Ils se sentent probablement dépassés par leurs tâches, alors qu'ils ont aussi ce jeu mental sur "est-ce le jour?" et bien que ce ne soit pas l'attitude que vous devriez avoir, c'est quelque chose que j'ai appris à ne pas poursuivre. J'aurais dû contacter mes superviseurs et leur expliquer ce que je ressentais. Je n'avais toujours pas compris l'ensemble du système et ce que l'on attendait de moi. J'ai dû faire beaucoup de petites choses, ce qui m'a en quelque sorte accablé parce que je n'ai jamais senti que je restais collé à quelque chose assez longtemps pour l'apprendre assez bien. Je n'ai jamais communiqué les difficultés que j'avais eues dans un délai raisonnable, ce que j'ai finalement appris à ne pas faire à l'avenir. Je sentais juste que j'étais incapable de jouer avec le lourd doute dans ma tête et l'anxiété que je faisais grandir en moi.

Après avoir été licenciée quelques mois plus tard, j'ai beaucoup appris de ce travail pour ne pas recommencer. Pendant que j'étais là-bas, j'ai eu du mal à maintenir certains éléments clés.

  • 1. Demandez de l'aide plus tôt.
  • 2. Mieux gérer le stress et le doute
  • 3. Découvrez où je me tenais pour communiquer et établir entre les deux parties ma position actuelle avec l'équipe afin que je puisse corriger les problèmes plus tôt

    Avance rapide maintenant, j'ai un nouvel emploi où je ne ressens aucun de ces problèmes, et Je peux dire avec confiance que je serais capable de faire les choses que je ne pensais pas pouvoir faire avant de savoir ce que je sais maintenant. J'ai dû apprendre cependant, et je sais que cette expérience a été inestimable, même si ça faisait mal d'être lâché.

    Donc je dis qu'il devrait être considéré comme un leader, si cela convient à votre équipe? Parfois, vous devez faire le choix de lâcher prise, et les gens doivent apprendre de l'échec. Si vous ne le faites pas, vous nuirez aux progrès de votre entreprise, mais si vous pouvez discuter avec votre équipe de la conversation avec cette personne pour évaluer d'elle ce qu'elle pense ou ressent en ce moment, vous pourriez potentiellement apprendre que sa lenteur et son incompétence peuvent être causée par certains des autres facteurs que j'ai rencontrés.

    Un travail est un travail, en fin de compte. Nous pouvons aimer avec qui nous travaillons, apprécier ce que nous faisons, mais nous avons tous un objectif à atteindre et parfois les choses ne se passent pas comme prévu. J'espère que si cette personne est lâchée, elle en apprendra, mais si votre équipe pense qu'elle peut faire ce travail, j'espère que vous apprendrez tous quelque chose qui vous aidera la prochaine fois que vous rencontrerez cette situation et vous épargnerez du temps et de l'argent. Dans le processus.

  • #7
      0
    Pieter Geerkens
    2018-01-04 19:36:59 UTC
    view on stackexchange narkive permalink

    Vous êtes viré!

    Soit vous dites ceci à votre ami , soit la direction vous le dira. Travaillez avec votre service des ressources humaines sur la façon de créer la trace écrite nécessaire pour le «licenciement pour cause».

    Vous avez déjà trompé votre employeur de l'indemnité de départ due en omettant de passer cet appel pendant la période probatoire de son embauche. Maintenant, vous continuez à tendre les relations avec le reste de votre équipe, en leur demandant de faire un travail supplémentaire non rémunéré pour couvrir l'incompétence du flagorneur, tandis que vous continuez à tromper votre employeur du montant du salaire de votre ami .

    Alors: faites pousser des cajones ; devenir un leader; et faites ce que vous savez juste avant que cela ne vous soit fait. Vous ne rendez service à personne en retardant l'inévitable.

    Vous ne pouvez généralement pas tirer si facilement (selon le pays), surtout si ledit développeur a préalablement reçu des commentaires positifs officiels sur les performances.
    @George: Bon point - J'ai ajouté une note sur le travail avec H.R. pour créer la trace papier nécessaire.
    #8
    -1
    user81355
    2018-01-03 22:52:21 UTC
    view on stackexchange narkive permalink

    Êtes-vous sûr de votre position? Est-ce votre rôle de gérer les problèmes de personnel, ou y a-t-il un supérieur hiérarchique devant qui le développeur est responsable?

    J'ai été là où vous êtes et je pense que, dans mon cas du moins, le chef d'équipe technique est responsable de fournir la solution technique, pas du développement à long terme du personnel. Si j'ai raison, et peut-être pas, alors votre responsabilité est d'utiliser les ressources qui vous ont été données pour atteindre vos objectifs techniques.

    Vous devriez éviter de juger votre équipe simplement parce que vous pourriez ne pas être au courant des problèmes qui affectent leurs performances. Il est de la responsabilité des supérieurs hiérarchiques d'équilibrer la performance avec les problèmes personnels, ainsi que pour l'attribution de soutien et de formation. Et si vous continuez à juger, vous risquez d'offenser le développeur et le supérieur hiérarchique en allant au-delà de vos compétences.

    Il convient de se rappeler qu'en tant que responsable technique, vous n'obtiendrez la plupart du temps que des développeurs moyens. Attendre plus, c'est se tromper. Pour chaque grand développeur, vous aurez un développeur inférieur à la moyenne. Tout ce que vous pouvez faire est de trouver une tâche où les moins capables sont les meilleurs.

    Bien que votre réponse comporte quelques points importants (dernier paragraphe), ce n'est pas une réponse à la question mais plutôt une extension.Le PO n'a pas demandé de le virer ou quelque chose de similaire, mais ce qu'il devrait faire lorsqu'il parlait au type * responsable *.Oui, l'OP n'est pas responsable.Mais il travaille avec eux.De qui le Business Dev devrait-il savoir si un travailleur fait un bon ou un mauvais travail s'il ne vient pas du PO?Comment le Business Dev est-il alors censé faire son travail de recherche de bonnes personnes?Je pense que vous et l'OP êtes bien d'accord.Mais ce n'est pas une réponse.


    Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
    Loading...