Pergunta 49 de 50
Conte um projeto real utilizando Kafka.
Pergunta
"Conte sobre um projeto real em que você utilizou Apache Kafka."
O que o entrevistador quer avaliar
Se você aplicou os conceitos na prática, não apenas os estudou. Aqui não há uma resposta pronta para decorar — o entrevistador quer ouvir o seu projeto, com detalhes específicos que só quem trabalhou nele saberia.
Esta pergunta não tem resposta genérica
Diferente das demais perguntas deste livro, esta não pode ser respondida com uma resposta padrão — ela exige que você fale sobre um sistema real que você construiu ou operou. Se você ainda não trabalhou diretamente com Kafka em produção, seja honesto sobre isso e descreva um projeto de estudo ou um cenário que você projetaria, deixando claro que é hipotético.
Como estruturar a resposta
Uma boa resposta cobre, na ordem, os mesmos elementos do estudo de caso PIX recebido deste livro — não porque você deva copiá-lo, mas porque essa estrutura é o que um entrevistador espera ouvir, na ordem em que ele consegue avaliar profundidade:
- O contexto de negócio: qual problema o sistema resolvia, e por que Kafka foi escolhido (ou herdado) para resolvê-lo.
- A topologia: quais tópicos existiam, quantas partitions, qual key foi usada e por quê.
- Os consumidores: quantos sistemas diferentes consumiam o mesmo tópico, e como eles eram independentes entre si.
- As decisões de confiabilidade: como idempotência, retry e DLQ foram tratados — ou, se não foram, o que você aprendeu com isso.
- Um desafio real: algo que não saiu como esperado, e como foi resolvido (isso conecta naturalmente com a pergunta seguinte).
Dica de entrevista
Entrevistadores sênior notam rapidamente quando uma resposta é genérica demais ("usamos Kafka para
comunicação entre microsserviços") versus específica ("o tópico tinha 12 partitions, usávamos contaId
como key porque precisávamos de ordenação por conta, e o maior desafio foi um período em que os rebalances
ficavam constantes por causa de max.poll.interval.ms mal configurado"). Detalhes concretos — mesmo
pequenos — comunicam experiência real de um jeito que generalidades não conseguem.
"Inventar" um projeto genérico decorado
Um projeto descrito de forma vaga, sem nenhum detalhe técnico específico (número de partitions, escolha de key, ferramentas de observabilidade usadas), costuma soar decorado — e frequentemente é seguido de perguntas de aprofundamento que expõem a falta de profundidade real na experiência descrita.
Pode vir a seguir
Após esta resposta, prepare-se para: "por que vocês escolheram essa quantidade de partitions?", "como vocês lidavam com mensagens duplicadas?" e a próxima pergunta deste livro, sobre desafios enfrentados.
Capítulos relacionados