"Trabalhar bem" é realmente uma ótima métrica, mas se você é o único na equipe capaz de decifrar o que você escreveu e, portanto, mantê-lo, o código é quase inútil para a empresa a médio ou longo prazo.
Um bom código é pelo menos:
- trabalhando como pretendido
- legível por humanos / claro
- de fácil manutenção
- facilmente extensível para mudanças futuras
- seguro
- sem dependências desnecessárias
- lidar corretamente com casos não nominais
- etc
(Alguns desses requisitos são realmente sobrepostos, mas é bom considerar individualmente ...)
As revisões de código servem ao propósito além da parte "funcional", que pode ser feita através de testes automáticos.
Eu, pessoalmente, sei que é chato ter algo funcionando sendo destruído e ter que reconstruí-lo do zero. Mas, muitas vezes, isso ocorre devido a uma falta de comunicação do líder sênior / técnico. Portanto, se você acha que precisa reescrever com muita frequência, da próxima vez, vá ao revisor antes de escrever uma única linha e tente obter o máximo de informações possível sobre o que ele espera, com todos os detalhes. Também pode ser ótimo se a equipe de revisores de código resumir suas expectativas em um documento formal ao qual todo desenvolvedor possa se referir.
Por um lado mais positivo, uma sessão também pode ser uma ocasião para compartilhar grandes práticas / projetos.