LSLínguas Sem BenaventeInglês para brasileiros

Aula

Architecture review and hard questions

Nível: C1

Objetivo

Responder challenge questions em uma architecture review em C1, reconhecendo limitações da proposta, defendendo decisões com dado, e ajustando o design quando o challenge é válido. O foco é mostrar maturidade técnica: saber quando a proposta está certa e quando precisa mudar.

Explicação

Architecture review em C1 é o espaço onde senior engineers challenge a proposta. Quatro tipos de challenge questions e a resposta certa para cada:

1. Challenge de correção técnica

Pergunta: 'Why did you choose X instead of Y?' A resposta C1: 'We chose X because [dado], and we rejected Y because [trade-off]. If you have data showing Y is better, I will revisit.' Resposta inclui dado, trade-off explícito, e abertura para revisar.

2. Challenge de escala

Pergunta: 'What happens at 10x traffic? Have you load tested?' A resposta C1: 'We load tested at 5x and extrapolated to 10x using [modelo]. We have evidence that [métrica], and we have a risk: [risco]. Mitigation: [plano].' Resposta tem evidência + extrapolação + risco + mitigação.

3. Challenge de operação

Pergunta: 'How will you debug this in production at 3am?' A resposta C1: 'We will have [logs], [métricas], [traces], and [runbook]. The on-call rotation is [timezone]; escalation is [path].' Resposta tem observabilidade + runbook + on-call.

4. Challenge de reversibilidade

Pergunta: 'What if this is wrong? Can we roll back?' A resposta C1: 'Yes, we can roll back in [tempo] because [razão]; the cost of being wrong is [métrica], and the cost of rolling back is [métrica].' Resposta tem tempo de rollback + custo de estar errado + custo de voltar.

A regra: challenge question é uma oportunidade de mostrar maturidade, não uma ameaça. A resposta C1 admite o que não sabe, defende o que sabe com dado, e propõe caminho quando o challenge é válido.

Exemplos

InglêsTraduçãoObservação
We chose X because the prototype reduced p99 by 35%; we rejected Y because it needs two sprints. If you have data showing Y is better, I will revisit.Escolhemos X porque o protótipo reduziu o p99 em 35%; rejeitamos Y porque precisa de dois sprints. Se você tiver dados mostrando que Y é melhor, eu reviso.Challenge técnico: dado + trade-off + abertura.
We load tested at 5x and extrapolated to 10x using the latency curve. We have evidence that p99 holds at 5x; risk: unknown at 10x. Mitigation: canary 1% for 24h before each stage.Testamos em 5x e extrapolamos para 10x usando a curva de latência. Temos evidência de que o p99 segura em 5x; risco: desconhecido em 10x. Mitigação: canário 1% por 24h antes de cada etapa.Challenge de escala: evidência + extrapolação + risco + mitigação.
We will have structured logs, RED metrics, distributed traces, and a runbook. The on-call rotation is split between Berlin and São Paulo; escalation is to the platform lead.Vamos ter logs estruturados, métricas RED, traces distribuídos, e um runbook. A rotação de plantão é dividida entre Berlim e São Paulo; a escalação é para a líder de plataforma.Challenge operacional: observabilidade + runbook + on-call.
Yes, we can roll back in 5 minutes because the change is behind a feature flag; the cost of being wrong is a 1% error rate spike; the cost of rolling back is zero.Sim, podemos voltar em 5 minutos porque a mudança está atrás de uma feature flag; o custo de estar errado é um pico de 1% na taxa de erro; o custo de voltar é zero.Challenge de reversibilidade: tempo + custo de errado + custo de voltar.

Erros comuns

  • Defender a proposta sem dado: 'I think it's right' não sobrevive a um senior com pergunta.
  • Ignorar o challenge: 'we don't need to discuss that' soa defensivo; o senior percebe a falta de maturidade.
  • Admitir derrota rápido: 'you're right, I will change it' sem entender o challenge é fraqueza, não maturidade.
  • Não reconhecer limitações: 'o design é perfeito' é propaganda; todo design C1 tem limitações nomeadas.
  • Não propor mitigação para risks levantados: o senior quer ver que o time pensou no pior caso.

Prática guiada

Reescreva cada resposta abaixo no padrão C1 de challenge question.

  1. Correção técnica: 'we chose X' -> inclua dado, trade-off, e abertura para revisar.
  2. Escala: 'we load tested' -> inclua evidência, extrapolação, risco, e mitigação.
  3. Operação: 'we will have logs' -> inclua observabilidade, runbook, e on-call.
  4. Reversibilidade: 'we can roll back' -> inclua tempo, custo de errado, e custo de voltar.

Resumo

Challenge questions em C1 têm quatro tipos: correção técnica, escala, operação, e reversibilidade. Cada resposta C1 tem estrutura: dado + trade-off + risco + mitigação + abertura para revisar. Sem essa estrutura, a resposta vira defesa; com ela, vira sinal de maturidade técnica.

Vocabulário

Palavras principais

8 itens
challenge questionpergunta de challenge — questiona a proposta em uma review

Senior engineers ask challenge questions to test the design.

Engenheiros seniores fazem challenge questions para testar o design.
load testteste de carga — simulação de tráfego real

We load tested at 5x and extrapolated to 10x.

Testamos em 5x e extrapolamos para 10x.
to extrapolateextrapolar — estender dados conhecidos para um cenário maior

We extrapolated from 5x to 10x using the latency curve.

Extrapolamos de 5x para 10x usando a curva de latência.
to roll backvoltar — desfazer uma mudança em produção

We can roll back in 5 minutes because of the feature flag.

Podemos voltar em 5 minutos por causa da feature flag.
feature flagfeature flag — interruptor que liga/desliga uma funcionalidade sem deploy

The change is behind a feature flag, so rollback is instant.

A mudança está atrás de uma feature flag, então o rollback é instantâneo.
runbookrunbook — guia operacional para responder a incidentes

We will have a runbook for the on-call.

Vamos ter um runbook para o plantão.
on-call rotationrotação de plantão — quem está disponível para responder a incidentes

The on-call rotation is split between Berlin and São Paulo.

A rotação de plantão é dividida entre Berlim e São Paulo.
RED metricsmétricas RED — Rate, Errors, Duration para o serviço

'We will alert on RED metrics: rate, errors, duration.'

'Vamos alertar em métricas RED: rate, errors, duration.'

História

História: Architecture review and hard questions

Nível: C1

História em inglês

Defending the design in a tough architecture review

On Friday, I had to defend the caching design in an architecture review with three senior engineers. A senior asked: why did you choose Redis over Memcached? I answered: we chose Redis because the prototype reduced p99 by 35% and we need explicit invalidation; we rejected Memcached because it lacks native invalidation. If you have data showing Memcached is better, I will revisit. Another senior asked: what happens at 10x traffic? I answered: we load tested at 5x and extrapolated to 10x using the latency curve. We have evidence that p99 holds at 5x; risk, unknown at 10x. Mitigation, 1% canary for 24h before each stage. The lead architect said: that was the most mature review I have seen this quarter.

Tradução linha por linha

InglêsTradução
On Friday, I had to defend the caching design in an architecture review with three senior engineers.Na sexta, eu tive que defender o design do cache em uma revisão de arquitetura com três engenheiros seniores.
A senior asked: why did you choose Redis over Memcached?Uma sênior perguntou: por que você escolheu Redis em vez de Memcached?
I answered: we chose Redis because the prototype reduced p99 by 35% and we need explicit invalidation; we rejected Memcached because it lacks native invalidation. If you have data showing Memcached is better, I will revisit.Eu respondi: escolhemos Redis porque o protótipo reduziu o p99 em 35% e precisamos de invalidação explícita; rejeitamos Memcached porque não tem invalidação nativa. Se você tiver dados mostrando que Memcached é melhor, eu reviso.
Another senior asked: what happens at 10x traffic?Outro sênior perguntou: o que acontece em 10x tráfego?
I answered: we load tested at 5x and extrapolated to 10x using the latency curve. We have evidence that p99 holds at 5x; risk, unknown at 10x. Mitigation, 1% canary for 24h before each stage.Eu respondi: testamos em 5x e extrapolamos para 10x usando a curva de latência. Temos evidência de que o p99 segura em 5x; risco, desconhecido em 10x. Mitigação, canário 1% por 24h antes de cada etapa.
The lead architect said: that was the most mature review I have seen this quarter.A arquiteta líder disse: essa foi a review mais madura que vi neste trimestre.

Notas de vocabulário

  • why did you choose Redis over Memcached = challenge de correção técnica.
  • we chose X because ... we rejected Y because ... if you have data, I will revisit = resposta C1: dado + trade-off + abertura.
  • what happens at 10x traffic = challenge de escala.
  • we load tested at 5x and extrapolated = evidência + extrapolação.
  • 1% canary for 24h = mitigação para risco conhecido.
  • the most mature review = sinal de maturidade C1: dado + trade-off + risco + mitigação + abertura.

Perguntas de compreensão

  1. Qual é a estrutura C1 de uma resposta a challenge question?
  2. O que responder a um challenge de escala?
  3. O que responder a um challenge de reversibilidade?

Prática com a história

  1. Responda a um challenge de escala em C1.
  2. Responda a um challenge operacional em C1.
  3. Responda a um challenge de reversibilidade em C1.

Prática

Exercícios e teste

Próxima etapa
3blocos de exercícios disponíveis neste tema
11questões de teste para revisar depois da aula

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.