13 março 2008

Produtividade ou liderança

Nós agilistas costumamos dizer que as questões técnicas não são o ponto crucial na maioria dos projetos de software. Lidar com todas as forças sociais que agem sobre a equipe e dentro dela é que são elas.

Pra isso, toda equipe precisa de um bom líder que tenha tato, e saiba conduzir as coisas com respeito e coragem. Liderança é uma característica que se desenvolve com tempo, humildade, e persistência.

Vejam o belo artigo com que RonJeffries nos presenteou na semana passada. Tive a iniciativa de traduzi-lo assim que acabei de ler.`

A propósito. Não me parece um texto sobre produtividade, mas sobre liderança e coaching:

----oo---oo----

No início de sua gestão como CTO, Kate Oneal enviou uma breve nota a suas equipes, dizendo:

"Gostaria que nossas equipes trabalhassem para melhorar continuamente sua produtividade. Cada equipe, por favor, desenvolva um plano de como pensa em fazer isso, e como pode relatá-lo brevemente, por escrito, de modo que possamos aprender com suas experiências, sintetizá-las e enviar para nossos executivos. Contem comigo, se precisarem. Aguardo seus relatório no início do mês, por favor. Obrigado."

As equipes tiveram reações diversas, desde a defensiva imediata, até a iniciativa de começar a coletar algumas métricas para ver onde se poderia chegar. A equipe do projeto Rimshot se reuniu para conversar. Eis as principais linhas de pensamento que suriram:

- Susan disse, "A Kate deveria ter nos dito o que ela entende por produtividade e como devemos medi-la, de modo que possamos fazer exatamente o que ela quer."

- Bill disse, "Nós devemos resistir o quanto pudermos. Todos sabemos que otimizar os números não funciona."

- James disse, "Vamos pensar em algumas formas de melhorar e medir a melhoria, e passamos isso a ela."

- David disse, "Talvez seja melhor esperarmos e vermos o que as outras equipes farão."

- Bill disse, "Não! Isso é apenas mais uma estratégia pra fazer a gente trabalhar mais."

- James disse, "Não é tão ruim assim. Nós ainda não conhecemos a Kate muito bem, e nem ela nos conhece. Devemos nos esforçar para construir uma relação de confiança."
- Bill disse, "Eu sou um programador Jim, não um psicólogo. Eu trabalho com código, não com relacionamentos."

Todo mundo riu. A discussão parecia não terminar, então decidiram marcar uma reunião com Kate para discutir o assunto.

--o-o--

Alguns minutos antes da reunião, estavam todos na sala de Kate, prontos para irem embora, como sempre acontecem nas reuniões com ela. Assim que o relógio marcou a hora combinada, ouviu-se os passos de Kate no corredor. Ela entrou e se posicionou em frente a seu lugar de costume na mesa de reuniões.

Bill, que tinha certeza que ela iria no mínimo se atrasar, cochichou com Alan, ao seu lado: "Como ela faz isso? A um minuto atrás ninguém sabia onde ela estava, e de repente aí está ela."

Do outro lado da sala, Kate falou, "Teletransporte na cadeira de rodas. Eu estava em Denver agora a pouco."

Todos riram. Mas como é que ela consegiu ouvir aquilo?

Kate iniciou a reunião: "Olá pessoal, o que está havendo?"



Como ninguém respondeu de imediato, ela procurou com os olhos até que que James, de algum modo, se viu diante do grupo e, como um locutor repentinamente designado, ele decidiu falar:

"Bem, sabe aquele memorando sobre produtividade que nos mandou?"

"Sim," disse kate.

"Bem, gostaríamos de conversar sobre isso."

Kate sorriu e aguardou em silêncio.

"Gostaríamos de entender melhor o que você quer, para podermos fazê-lo," disse James.

"Então vocês querem saber o que preciso, para poderem fazer?" perguntou Kate.

"Sim, o que você precisa?"

"Ok, podem perguntar."

"Bem," disse James, "o que você precisa?"
"O que estou pedindo é que trabalhemos para melhorar continuamente nossa produtividade, e para fazermos isso de um modo que possamos demonstrar como estamos fazendo."

"Ok, mas o que significa melhorar a produtividade?", perguntou James.

"O que vocês, da equipe do Rimshot, fazem?" perguntou Kate.

Do outro lado da sala, Bill virou-se para Susan e e sussurrou. "Ela nem ao menos sabe o que nós fazemos?!"

Susan sussurrou de volta, "Ela sabe tudo."

Kate olhou para Susan do outro lado da sala, sorriu, e assentiu com a cabeça.

"Imaginem que eu não saiba. O que a equipe de vocês faz?"

"Bem, nós implementamos as histórias para o cliente do Rimshot."

"Bom," disse Kate, "eu já esperava que fosse isso. O que a produtividade pode significar pra vocês então?"

Silêncio. Então Susan disse, "nós podemos implementar mais histórias."

Kate respondeu, "Isso me soa bem. Mais histórias significa mais produtividade, então?"

Bill precisava corrigir isso. "Não necessariamente. E se nós implementarmos mais histórias, mas com mais bugs?"

"Bugs são ruins, certo?" perguntou Kate.

"Dã... Claro que são," disse Bill.

Kate fingiu uma risada. "Dã, claro. Então menos bugs seria bom?"

"Claro," disse Bill.

"Espere," disse Susan. "E se tivermos menos bugs, mas implementarmos menos histórias? Isso também não seria bom."

"Entendo," disse Kate. "Como o número de histórias e o número de bugs influenciam na produtividade, então?"

A equipe discutiu um pouco. James foi então compelido novamente a falar. "Bem, mais histórias é melhor, a princípio, a menos que outra coisa venha a piorar. E menos bugs é melhor, a princípio, a menos que isso diminua muito nosso ritmo."
"Me parece certo," disse Kate.

"Então você está nos pedindo para registrar os defeitos e a quantidade de histórias, para diminuirmos um e aumentar o outro?" perguntou Bill.

A equipe sabia que a pergunta era capciosa, assim como Kate. "A decisão é sua. Mas se trabalharem apenas pelos números, não haverá formas de burlá-los? Não que vocês o fariam de propósito, claro."

Kate tirou da manga a melhor carta de Bill, antes que ele pudesse jogá-la.


Bill seguiu em frente. "Hummm, sim. Nossa maior concepção sobre as métricas é a de que elas nos levam a resultados ruins. Mesmo se fizermos várias métricas, isso apenas tornará as coisas mais complicadas, sem levar a resultados reais."

Kate disse, "Está certo. É por isso que eu não estou pedindo métricas"

"Um dos meus livros favoritos relacionado a isso é o 'Punished by Rewards' [Punido pela recompensa], de Alfie Kohn. O que eu aprendi desse livro é que incentivos, recompensas e punições na verdade não funcionam muito bem. Eu tenho uma cópia em meu escritório, se alguém quiser emprestado."

"Mas espere," disse Kate, "não somos perfeitos, somos? Nós temos espaço para melhoria? Existe algum modo de melhorar, e saber que estamos melhorando?"

A equipe pensou um pouco, então James tomou a frente. "Bem, tem coisas que fazemos que desperdiçam tempo. Quando estávamos nos preparando para essa reunião, alguém comentou que perdemos muito tempo resolvendo problemas de integração. Isso fica em algo perto de oito pessoas-hora por semana. O que dá um dia inteiro de trabalho!"

"Se reduzissem esse tempo, o que conseguiriam?" perguntou Kate.

"Bem, conseguiríamos mais tempo." disse James.

"E porque isso seria bom?" perguntou Kate.

"Humm. Poderíamos gastar esse tempo fazendo coisas mais produtivas. Poderíamos gastar um dia inteiro refatorando o código, por exemplo."

"E porque eu deveria me importar com refactoring?", perguntou Kate.

"Porque torna o código mais limpo." disse Bill.

"E porque eu deveria me importa com código mais limpo?"

"A gente trabalha mais rápido quando o código está limpo." disse Bill.

"E mais rápido é melhor porque..." disse Kate.

"Bem, porque conseguimos implementar mais histórias?" disse Bill.

"Isso seria bom, a menos que pioremos outras coisas, certo?" disse Kate.

"Sim." disse James. "Se diminuirmos esses problemas de integração, ficaremos menos aborrecidos, poderemos manter o código bem mais limpo, e poderemos seguir para outra história. Está bom pra você se apresentarmos um plano dizendo que, nos próximos meses, pretendemos reduzir os problemas de integração, transformando essas horas em tempo produtivo? "

"Isso me soa bem," disse Kate. "Existe algum modo pelo qual vocês possam demonstrar onde esse tempo está sendo investido? Imagino que as pessoas gostariam de saber que ele está sendo usado com sabedoria."

"Eis uma idéia," disse Susan. "E se estabelecermos nosso objetivo como sendo reduzir o tempo gasto com problemas de integração, e usar esse tempo com atividades mais valiosas. Nós poderíamos reportar o progresso com dois pequenos gráficos. Um mostrando algo como o número de problemas de integração, e o tempo para resolvê-los. E o outro mostrando a porcentagem média de tempo alocado."

"O que o segundo gráfico nos mostraria?" disse Kate.

"Mostraria como estamos gastando nosso tempo. Se fizermos coisas que nos tornam melhores, nós provavelmente veremos mais tempo sendo gasto com coisas boas, como novas histórias e refactoring, e menos tempo com coisas ruins, como resolvendo bugs e nos irritando com integrações." disse Bill.
"Me parece bom. Se todos acabarem contando como economizaram tempo, e onde usaram esse tempo, poderemos comparar as notas e compartilhar idéias. E mais, tenho certeza de que outros departamentos, além do de tecnologia, vão adorar saber o que estão fazendo. Vocês podem pensar sobre isso e decidir se pretendem ir nessa direção, ou se preferem desenvolver mais a idéia, e nos trazer algo ainda melhor?" disse Kate.

A equipe discutiu um pouco. "Sim, podemos." disse James. "E faremos. Obrigado."

"Obrigado a vocês, pessoal. Estou ansiosa pra ver o que me trarão."


A equipe do Rimshot voltou a seu ambiente de trabalho. Todos estavam felizes e contentes.
"Ok," disse Bill, "conseguimos que ela respondesse à nossa pergunta, e nem precisaremos coletar métricas estúpidas."

Todos começaram a concordar, até que Alan falou, "Espere. Kate não chegou nem a responder nossa pergunta. Nós mesmos é que chegamos à resposta ali, bem na frente dela. Nós somos melhores do que imaginávamos!"


Longe dali, em seu escritório, Kate sorria. :-)