10 coisas que podemos fazer para melhorar a experiência do pareamento
Quantas vezes já não passamos por uma experiência de pareamento que foi produtiva e compensadora, tanto do ponto de vista profissional quanto do pessoal? Podemos também enumerar outras tantas vezes em que nos ficamos perguntando o porquê daquela vez que pareamos não ter sido tão agradável e efetiva quanto poderia. Os benefícios da programação em par para equipes de projetos de software, ágeis ou não, já são bastante conhecidos; porém, o sucesso de sua prática exige que os praticantes acreditem na sua força e, sobretudo, se dediquem à atividade.
Mas como fazer a experiência de pareamento dar certo? A simples finalização da tarefa da qual o par se incumbiu não é critério suficiente de sucesso. O pareamento é muito mais do que apenas se juntar para concluir uma tarefa: é uma oportunidade de estreitar relações com o seu par; uma chance de ensinar e de aprender, não apenas aspectos técnicos, mas também culturais; de entender aquilo que seu par almeja, o que o motiva e o que o desmotiva.
Marcos Brizeno, consultor que trabalha no escritório de Recife, fala em um de seus posts sobre os desafios de parear, que para ele são:
- Infraestrutura - configuração comum de hardware e sofware usada pelo time para parear;
- Fadiga - a energia exigida para manter o foco durante o pareamento; e
- Ego - o desafio de permanecer humilde e evitar discussões improdutivas.
A verdade é que não existe uma receita pronta para tornar a prática do pareamento mais agradável. Mas procurarei aqui expor e discutir algumas ações que podem ser tomadas para melhorar a experiência do pareamento e ajudar a superar alguns dos desafios enumerados por Marcos.
#1 Não centralize o driving. Aquele no par que se sente mais confortável com o ambiente de desenvolvimento tende naturalmente a centralizar o driving, em parte porque o outro geralmente tem a sensação que vai prejudicar o ritmo do pareamento ao fazer o driving. O lado ruim é que quem está menos acostumado vai continuar assim ao final da experiência. Definir um intervalo de tempo de troca de driving pode ajudar a balancear isso.
#2 Gerenciem o foco juntos. Pelos mais diversos motivos, um dos desenvolvedores pode estar mais focado do que o outro em determinados momentos. Caso isso se torne um problema, o mais focado deve chamar a responsabilidade e expor a situação, propondo uma solução. Pode ser muito complicado esperar que seu companheiro recupere o foco sozinho, e perder o seu foco por causa dele também não vai ajudar em nada. Técnicas como Pomodoro podem ajudar a resolver situações de falta de foco, mas o par deve conversar sobre a melhor solução.
#3 Evitem trabalhar sozinhos. Às vezes um dos desenvolvedores pode precisar se ausentar por um tempo. Nesse caso tente esperá-lo voltar. Procure fazer outra coisa nesse tempo que ajude o projeto ou a empresa, ou aproveite para usar esse intervalo para fazer coisas não relacionadas ao trabalho. Claro, fatores como senso de urgência e a situação da iteração devem ser levados em conta; se for inviável deixar a atividade parada continue sem seu par, mas não deixe de passar o contexto do que foi feito durante sua ausência quando ela/ele voltar.
#4 Procurem intercalar momentos de concentração e descontração. Foco é fundamental, mas seu excesso é prejudicial. Pessoas não são robôs que conseguem trabalhar 8 horas ou mais de maneira ininterrupta. Façam intervalos periódicos e deixem o trabalho completamente de lado durante eles. Procurem fazer coisas juntos, como descobrir e conversar sobre um assunto em comum, jogar videogame ou sair para tomar um café.
#5 Celebrem as conquistas! Ao final de uma etapa ou da atividade de pareamento em si, pode ser bastante gratificante dar uns passos para trás e contemplar o que foi construído ou alcançado. Celebrem! Pode também ser um bom momento para compartilhar os resultados com o resto do time.
#6 Sincronize-se com seu par. É natural que um desenvolvedor tenha mais contexto na atividade a ser desempenhada do que o outro, e isso pode provocar uma diferença de ritmo que prejudica a experiência. Se você tem mais contexto ou facilidade, tenha a sensibilidade para perceber isso e adapte seu ritmo ao do seu colega. Pare e explique quantas vezes for necessário. Se você tem menos contexto, deixe isso claro. Interrompa a atividade para pedir que seu colega lhe explique o que ele está fazendo e o porquê. Comunicação é essencial.
#7 Passe o contexto adequadamente. Na hora de passar o contexto, é importante se certificar de que ambos no par usam um vocabulário comum e conhecido. É horrível tentar entender o sentido de uma frase sem saber o significado de algumas palavras que a compõem. Procure explicar de maneira simples e direta, desenhando diagramas caso necessário. Se ajudar, traga outra pessoa da equipe que você acha que pode explicar os conceitos de uma maneira melhor.
#8 Saiba lidar com as divergências. As divergências acontecem o tempo todo durante o pareamento, e nesses momentos é muito importante dentro de cada par ouvir o outro completamente e expor suas opiniões de maneira serena e respeitosa, sem ser arrogante. Tentar enxergar o problema do ponto de vista do seu colega pode lhe ajudar a perceber algo que você não estava levando em consideração. Deixe a competição de lado, você não precisa ter razão em tudo. Se por acaso houver um conflito de soluções, chamar um terceiro colega para votar em uma delas pode ajudar.
#9 Esteja disposto a aprender e a ensinar. Mesmo que seja seu primeiro dia de projeto, tenha consciência de que você pode contribuir mesmo não sabendo de muita coisa. Da mesma forma, se você já tem bastante tempo de projeto e está pareando com alguém que entrou agora, abra espaço para que a outra pessoa contribua também. Faça as perguntas certas, apresente os conceitos gradativamente e conduza seu par à solução de maneira sutil.
#10 Troquem feedbacks. Quando terminarem de parear, procurem dar feedbacks um ao outro enquanto as percepções estão frescas na memória. Não precisa ser nada muito formal; uma conversa de 15-30 minutos pode ser suficiente para expor para seu colega como foi a experiência de parear com ele, o que ele deve continuar fazendo, o que ele pode melhorar, etc. Caso não tenham a oportunidade, escrevam notas sobre seu par em algum lugar para que os feedbacks possam ser trocados em outro momento oportuno.
É importante mencionar que essa lista de ações aqui enumeradas foi compilada com base em feedbacks que dei e/ou recebi ao longo do meu tempo na Thoughtworks, e não pretende de forma nenhuma ser absoluta; deve ser encarada como conselhos, apenas. Você tem algum feedback sobre essas ações? Tem mais alguma coisa a acrescentar? Exponha suas ideias nos comentários. :)
Aviso: As afirmações e opiniões expressas neste artigo são de responsabilidade de quem o assina, e não necessariamente refletem as posições da Thoughtworks.