Questões e Respostas
A probabilidade de passar por uma entrevista de System Design é maior quando:
- Não há definição de probabilidade.
- A vaga é para desenvolvedor senior ou níveis maiores e a empresa tem maior porte.
- Se tem pelo menos 10 anos de experiência e a empresa é de pequeno porte.
- A vaga é para desenvolvedor junior em média empresa.
O entrevistador pode pedir para realizar o System Design de diversos tipos de sistemas, sejam genéricos ou realísticos.
Há uma maior chance de a entrevista técnica ser de maior complexidade para o frontend e manager do que para a vaga backend.
Dentre os principais pontos que poderão ser abordados na entrevista de System Design, algumas delas são:
- Modelagem de dados, escolha de cloud provider e design patterns.
- Avaliação técnica do time de desenvolvimento, estimativa de custos e a escolha de cloud provider.
- Requerimentos do sistema, estimativa de capacidade, modelagem de dados e api design.
- Estimativa de custos, escolha de stack e avaliação técnica do time de desenvolvimento.
Algumas das estratégias para melhor responder ao entrevistador é:
- Explicar o link entre os endpoints da API e as chamadas do banco de dados.
- Incluir a estimativa de capacidade de armazenamento de dados.
- Todas as opções estão corretas.
- Usar números fáceis para calcular a escala do sistema e explicar estes números.
Com relação à modelagem de dados, é importante incluir tanto banco de dados SQL e no-SQL para demonstrar o domínio sobre este tema ao entrevistador.