Eu sou um líder de equipe com mais de 5 desenvolvedores. Eu tenho um desenvolvedor (vamos chamá-lo de A ) que é um bom programador, que escreve um código limpo e fácil de entender. No entanto, ele é um pouco difícil de administrar, e às vezes me pergunto se ele está realmente com desempenho ruim ou não.
- Nossa empresa exige que os desenvolvedores indiquem o progresso do trabalho no rastreador de erros que usamos, não tanto para monitorar os programadores, mas para manter os interessados informados sobre o progresso. O problema é que o A apenas atualiza o progresso da tarefa quando é feito (talvez três semanas depois de ser trabalhado pela primeira vez) e isso deixa todos imaginando o que está acontecendo no meio da semana de desenvolvimento. Ele não mudaria seu hábito apesar da sondagem repetida. (Tudo bem, desenvolvedores odeiam papelada, eu também)
- Recentes 2 a 3 meses ele sai de casa muitas vezes devido a vários eventos - ou ele está doente, ou tem que participar de muitos eventos pessoais etc. (tudo bem, coisas ruins acontecem em uma corda. É apenas uma coincidência) )
- Definimos sprints ou roteiros para cada mês. E no início do sprint, discutiremos a quantidade de trabalho que cada um dos desenvolvedores precisa fazer em um sprint e os desenvolvedores definirão o tempo necessário para cada tarefa . Ele geralmente não conseguirá completar todos eles. (Tudo bem, os desenvolvedores estão regularmente perdendo prazos, não por culpa deles).
- Estou baseada em Cingapura. Não tenho certeza se isso importa. Sim, os asiáticos são conhecidos por serem reticentes, mas isso importa?
Se apenas um ou dois dos eventos acima ocorrerem, não sentirei que o A está com baixo desempenho, mas todos eles acontecem juntos. Então eu tenho o sentindo que A está com baixo desempenho e talvez - Deus me livre - faltar.
Este é apenas um sentimento baseado em meus anos de experiência como programador. Mas eu posso estar errado.
É notoriamente difícil medir o trabalho de um programador, uma vez que nem todas as duas tarefas são semelhantes e não há um objetivo padrão para medir o comprometimento de um programador com sua empresa. É absolutamente impossível dizer se o programador está fazendo seu trabalho ou se está falhando. Tudo o que você pode fazer é confiar neles - sim, confiar e dar a eles autonomia é a melhor maneira de os programadores trabalharem, eu sei disso, então não comece uma aula sobre por que você precisa confiar em seus programadores, muito obrigado - mas se eles abusarem da sua confiança, você sabe?
Resultado:
Eu tenho uma conversa direta com ele sobre a minha percepção sobre o seu desempenho. Ele ficou indignado quando eu sugeri que tinha a sensação de que ele não estava se apresentando no seu melhor nível. Ele sentiu que isso era um sentimento completamente injusto. Então eu respondi que este era o meu sentimento e eu não sabia se o meu sentimento estava certo ou não. Ele não teria nada disso e terminou a discussão imediatamente.
Antes de sair, ele disse que "tentaria dar mais para a empresa" em um tom muito frio. Fiquei surpreso com a reação dele. Tenho certeza de que o ofendi de algumas maneiras. Não tenho certeza se isso era a coisa certa a fazer para eu ser tão franco com ele, no entanto.
A minha pergunta é: Como você pode saber se seus programadores estão com baixo desempenho? Certamente há líderes de equipe de experiência que sabem melhor do que eu sobre isso?
Notas extras:
- Eu odeio o microgerenciamento. Portanto, tudo o que temos para o nosso processo de software é o Sprint (onde as tarefas são priorizadas e atribuídas e, no final do mês, uma revisão da quantidade de trabalho executada). Os desenvolvedores precisariam atualizar as tarefas conforme elas acontecem todos os dias.
- Não há reunião em pé ou qualquer coisa do tipo. Principalmente porque temos a liberdade de trabalhar em casa e todos gostam dessa liberdade.
- Embora eu seja quem defina o prazo, mas os desenvolvedores fornecerão a estimativa para cada tarefa e decidirei - com base na estimativa - as tarefas que entram em um determinado sprint. Se eles não puderem concluir as tarefas no final do sprint, vou empurrá-los para o próximo. Então, teoricamente, um pode apenas fazer 1 ou 2 tarefas durante todo o sprint e depois empurrar as 99 tarefas restantes para o próximo sprint e ainda assim ele ficará bem enquanto justificar isso - na forma de atualizações diárias do progresso do trabalho