We negotiate style separately from principle.
Negociamos estilo separadamente do princípio.Aula
Code review between senior engineers
Nível: C1
Objetivo
Negociar estilos, princípios e trade-offs em code review entre seniors em C1, discordando sem desmotivar, citando dado, e fechando a review com decisão. O foco é review entre pares experientes onde a hierarquia não ajuda — só o argumento convence.
Explicação
Code review entre seniors em C1 é diferente de review com juniors: a hierarquia não existe, e só o argumento convence. Quatro movimentos:
1. Discordar com dado, não com opinião
Senior para senior, 'eu acho' não sobrevive. C1 cita: 'I disagree because the data shows that the new design adds 50 ms to the critical path'. Discordar com dado é o que separa o argumento do gosto.
2. Negociar estilos com princípio, não com preferência
'Estilo de indentação' é preferência; 'SRP sugere' é princípio. C1 cita: 'I prefer a different style, but SRP is the principle here; let's follow the principle and discuss the style separately'.
3. Reconhecer quando o outro está certo
C1 não defende posição por orgulho. `I see your point; the data is on your side; let's go with your proposal` é maturidade. Defender posição errada custa credibilidade.
4. Fechar a review com decisão
Review entre seniors sem fechamento vira debate infinito. C1 fecha com: `I will go with your proposal; the data supports it. Let's move forward.` Decisão + razão + movimento.
Exemplos
| Inglês | Tradução | Observação |
|---|---|---|
| I disagree because the data shows that the new design adds 50 ms to the critical path; the previous design had 30 ms. | Discordo porque os dados mostram que o novo design adiciona 50 ms ao caminho crítico; o design anterior tinha 30 ms. | Discordar com dado, não opinião. |
| I prefer a different style, but SRP is the principle here; let's follow the principle and discuss the style separately. | Eu prefiro um estilo diferente, mas SRP é o princípio aqui; vamos seguir o princípio e discutir o estilo separadamente. | Negociar estilo com princípio. |
| I see your point; the data is on your side; let's go with your proposal. | Entendo seu ponto; os dados estão do seu lado; vamos seguir com sua proposta. | Reconhecer quando o outro está certo. |
| I will go with your proposal; the data supports it. Let's move forward. | Vou seguir com sua proposta; os dados sustentam. Vamos seguir em frente. | Fechar com decisão + razão + movimento. |
Erros comuns
- Defender posição por orgulho: 'I was right' quando os dados mostram que não, custa credibilidade.
- Argumentar com opinião: 'eu acho' não convence senior; só dado convence.
- Misturar estilo com princípio: estilo é preferência; princípio é regra; sem separar, o debate trava.
- Não fechar: review entre seniors sem decisão vira debate infinito; C1 fecha com movimento.
- Tomar como pessoal: code review é sobre código, não sobre quem escreveu; C1 mantém o foco no código.
Prática guiada
Reescreva cada movimento abaixo no padrão C1 de review entre seniors.
- Discordar: cite dado, não opinião.
- Negociar estilo: separe princípio de preferência.
- Reconhecer: 'os dados estão do seu lado' é maturidade.
- Fechar: decisão + razão + movimento.
Resumo
Code review entre seniors em C1 usa dado em vez de opinião, princípio em vez de preferência, reconhecimento quando o outro está certo, e fechamento com decisão. Sem dado, é opinião; sem princípio, é estilo; sem reconhecimento, é orgulho; sem fechamento, é debate infinito.
Vocabulário
Palavras principais
SRP is a principle; indentation is a preference.
SRP é um princípio; indentação é uma preferência.Give credit when the data is on the other side.
Dê crédito quando os dados estão do outro lado.Always close the review with a decision.
Sempre feche a review com uma decisão.História
História: Code review between senior engineers
Nível: C1
História em inglês
Closing a contentious code review with another senior
On Friday, I had a code review with another senior engineer on the caching layer. We disagreed on the cache invalidation strategy: I preferred TTL, she preferred explicit invalidation. I opened with data: the prototype shows that explicit invalidation adds 30 ms to every write, but TTL can serve stale data for up to 5 minutes; for inventory, staleness is acceptable. She acknowledged the data: I see your point; the data is on your side; let's go with TTL. I closed the review: I will go with TTL for this sprint; we can revisit if the data changes. Let's move forward.
Tradução linha por linha
| Inglês | Tradução |
|---|---|
| On Friday, I had a code review with another senior engineer on the caching layer. | Na sexta, eu tive uma code review com outra engenheira sênior sobre a camada de cache. |
| We disagreed on the cache invalidation strategy: I preferred TTL, she preferred explicit invalidation. | Discordamos sobre a estratégia de invalidação do cache: eu preferia TTL, ela preferia invalidação explícita. |
| I opened with data: the prototype shows that explicit invalidation adds 30 ms to every write, but TTL can serve stale data for up to 5 minutes; for inventory, staleness is acceptable. | Eu abri com dado: o protótipo mostra que invalidação explícita adiciona 30 ms a cada escrita, mas TTL pode servir dados stale por até 5 minutos; para inventário, staleness é aceitável. |
| She acknowledged the data: I see your point; the data is on your side; let's go with TTL. | Ela reconheceu o dado: entendo seu ponto; os dados estão do seu lado; vamos seguir com TTL. |
| I closed the review: I will go with TTL for this sprint; we can revisit if the data changes. Let's move forward. | Eu fechei a review: vou seguir com TTL neste sprint; podemos revisitar se os dados mudarem. Vamos seguir em frente. |
Notas de vocabulário
- the prototype shows that explicit invalidation adds 30 ms to every write = dado, não opinião.
- I see your point; the data is on your side = reconhecimento com maturidade.
- I will go with TTL for this sprint; we can revisit if the data changes = fechamento: decisão + cláusula de revisão + movimento.
Perguntas de compreensão
- O que diferencia review entre seniors de review com juniors?
- Como discordar com senior em C1?
- Por que separar princípio de preferência?
- Como fechar review entre seniors?
Prática com a história
- Reescreva 'eu discordo' como discordar com senior em C1.
- Reescreva 'talvez você esteja certo' como reconhecimento C1.
- Escreva um fechamento C1 para review entre seniors.
Prática
Exercícios e teste
A próxima melhoria é transformar esses arquivos em perguntas com resposta no navegador. Por enquanto, esta página já organiza o estudo e permite seguir a aula inteira sem abrir os arquivos manualmente.