É importante ressaltar que pensar no lado humano do Code Review não é desencorajar a fazê-lo, pelo contrário. Neste artigo estou alertando para possíveis problemas causados pela revisão de código, quando feita sem estar consciente de alguns fatores. Os quais estão mais ligados a parte humana do que a parte técnica.

Algumas premissas do code review ficaram fixas na minha cabeça depois de passar por algumas equipes muito boas nisso e outras nem tanto. De qualquer forma, o meu objetivo em relação ao code review e várias outras coisas da vida é fugir da superficialidade e dar contexto, ou um sentido, para as minhas ações. Então, vamos a algumas lições que aprendi:

O principal objetivo e a razão

Algumas vezes podemos esquecer disso, mas o principal objetivo de um code review é manter a qualidade do código, consequentemente, melhorando a qualidade/confiabilidade do projeto. Por isso, quando se tem esse propósito fixado na mente, cria-se uma missão em comum com os seus colegas de equipe, o que gera companheirismo e empatia!

Portanto, sempre que for revisar o código de alguém, lembre-se desse objetivo. É comum o code review acabar virando apenas uma crítica sem finalidade, mas quando essa é feita com uma razão forte, provavelmente, será melhor aceita. No entanto, quando o “feedback” é feito apenas pensando em código, sem empatia alguma por quem fez, há uma grande probabilidade que de ser desagradável e, até mesmo, tenha um tom ríspido ou agressivo, o que não traz benefício algum para a equipe.

Assim penso, acima de code reviews e lutas de ego entre programadores, está o bom relacionamento e sintonia entre o time de TI. Hoje tenho uma certeza, prefiro trabalhar em empresas que se importam mais com o bom relacionamento dos colaboradores do que com as críticas feitas nas revisões de código. Isto porque tenho uma impressão (quase certeza) de que esses ambientes acabam entregando melhores produtos aos seus clientes, e são excelentes para se trabalhar e crescer como pessoa. Além de fazer com o que os colaboradores sintam vontade de permanecer por anos e anos nesses lugares.

Empatia, enviando a mensagem

A empatia é o elo que liga um code review a um ambiente cordial e respeitoso entre colegas de trabalho. Por exemplo, tive companheiros de equipe que faziam críticas tão boas e de forma tão sutil que eu tinha vontade de recebe-las todos os dias (várias vezes, inclusive), por sentir que aquilo estava me fazendo evoluir como programador e como pessoa! Ao ver a cordialidade embutida nelas, eu acabava me contagiando e criando um efeito dominó. Eu sentia vontade de tratá-los com toda aquela gentileza que recebi. Isso não tem preço!

Por outro lado, quando a empatia não faz parte das peças do jogo, o mais comum é que se crie um ambiente de disputa, nada cordial e até agressivo. Não consigo enxergar vantagens nisso para a equipe ou empreendimento, já que o maior patrimônio das empresas são as pessoas e não o código. Então, se quem faz o code review não está pensando em seus colegas antes de fazer uma crítica, já existe um erro que deveria ser revisado antes mesmo do code review.

Foco no problema, recebendo a mensagem

Do outro lado da ponta está o receptor. Quem recebe a mensagem precisa estar preparado e adaptado ao pensamento de que críticas construtivas te fazem evoluir, e isso é tão importante quanto a forma como a mensagem é enviada. Por isso, não adianta enviar uma mensagem cordial e gentil se do outro lado é entendida como um “jab de direita”. Focar sempre nos problemas e não em pessoas é um bom exercício para se tornar um expert em receber críticas e transformá-las em um degrau na sua evolução.

Conclusão

Sempre estou me fazendo algumas perguntas como:

  • Eu estou fazendo o meu melhor?
  • Penso em meus colegas?
  • As minhas palavras estão sendo colocadas da melhor forma?
  • Estou pensando em todo o contexto?

Essa autorreflexão te deixa mais consciente para não enviar uma mensagem ou recebe-la de uma forma errada. Cautela sempre é bom, pensar no próximo é melhor ainda! Esses são ingredientes de um bolo que sempre corre riscos de não ficar bom. Porém, se utilizarmos os ingredientes certos e fizermos com carinho, a chance de dar errado diminui muito. Graças a minha esposa, aprendi isso.

Para mim, a mesma coisa vale para code reviews. Os ingredientes são bem conhecidos e são fáceis de encontrar! Basta saber dosar e sempre jogar duas xícaras de chá cheias de empatia que o risco do bolo ficar murcho ou sem sabor é bem menor.

É isso, dattebayo.

Show CommentsClose Comments

Deixe seu comentário