Perguntas de entrevista para desenvolvedor full stack

Por Aaron Cao · Atualizado em

Perguntas de entrevista para desenvolvedor full stack
As entrevistas full stack testam as costuras entre as camadas: como um contrato de API é projetado e alterado, como o login funciona do navegador até o banco de dados, e como uma funcionalidade percorre o caminho do esquema até a tela. Espere uma etapa de código, um exercício de construir uma funcionalidade e uma discussão de design que abranja cliente e servidor.

As entrevistas full stack testam as costuras entre as camadas: como um contrato de API é projetado e alterado, como o login funciona do navegador até o banco de dados, e como uma funcionalidade percorre o caminho do esquema até a tela. Espere uma etapa de código, um exercício de construir uma funcionalidade e uma discussão de design que abranja cliente e servidor.

O que as entrevistas de desenvolvedor full stack realmente testam?

Você pode temer que uma entrevista full stack signifique preparar duas entrevistas completas, frontend e backend, no tempo que a maioria dos candidatos dedica a uma só. Esse receio é razoável, e esta seção mostra por que o trabalho é menor do que parece. Os entrevistadores raramente repetem uma entrevista especializada de frontend ou backend; eles investigam os pontos onde as camadas se encontram, porque é aí que os engenheiros full stack justificam o título.

A maioria dos processos combina quatro tipos de etapas:

  • Código: um problema de estruturas de dados ou uma tarefa prática como analisar, agrupar ou paginar registros, muitas vezes em JavaScript, TypeScript, Python ou Java.
  • Construir uma funcionalidade: uma pequena tarefa de ponta a ponta, como um formulário que salva em uma API e mostra erros de validação, em um editor compartilhado ou um repositório para fazer em casa.
  • Design em toda a stack: esboçar uma funcionalidade como comentários ou notificações, cobrindo o esquema, a API, o estado do cliente e o que acontece quando a rede falha.
  • Comportamental: ter sido responsável por uma funcionalidade do ticket até a produção, e um bug que você rastreou entre camadas.

Perguntas específicas de uma camada continuam aparecendo, e os conjuntos dedicados, incluindo páginas separadas para desenvolvedor frontend e backend, estão no hub de perguntas de entrevista. Esta página cobre o que fica entre as duas.

Quais perguntas sobre contrato de API e dados aparecem mais?

A API é o contrato entre as duas metades do seu trabalho, então os entrevistadores perguntam dos dois lados:

  • Como você projetaria os endpoints de uma funcionalidade, e o que cada um retorna em caso de sucesso e de falha?
  • Como você altera uma API sem quebrar clientes que já estão em produção? (Versionamento, mudanças aditivas, janelas de descontinuação.)
  • Paginação por offset ou por cursor: qual você usaria para um feed de atividades, e por quê?
  • Como você torna um POST seguro para tentar novamente se o cliente expirar? (Chaves de idempotência.)
  • REST, GraphQL ou RPC para um determinado cliente: o que muda em cache, over-fetching e tratamento de erros?
  • Onde a validação deve viver, no cliente, no servidor ou em ambos, e qual é a autoritativa?
  • Como você evita uma consulta N+1 quando um endpoint de lista retorna dados aninhados?

Uma boa resposta nomeia o trade-off, não apenas a escolha. "Paginação por cursor, porque linhas inseridas enquanto o usuário rola a tela deslocariam um offset e duplicariam itens" é melhor do que listar as duas opções e parar por aí.

Como responder perguntas sobre autenticação e rastreamento de uma funcionalidade?

Dois tipos de perguntas separam os candidatos full stack dos especialistas. O primeiro é a autenticação de ponta a ponta: explique o que acontece desde o momento em que um usuário envia um formulário de login até o momento em que uma chamada de API autenticada tem sucesso. Os entrevistadores prestam atenção a onde a credencial fica (um cookie ou armazenamento do cliente), como o servidor a verifica, por que um cookie HttpOnly resiste ao acesso por script, que proteção CSRF uma sessão baseada em cookie precisa, como o CORS afeta um frontend de outra origem, e como logout e expiração de token são tratados.

O segundo é o rastreamento: "Um usuário clica em Salvar e nada acontece. Explique como você depuraria isso." Uma boa resposta avança camada por camada, do console do navegador e da aba de rede, para a requisição e a resposta, para os logs do servidor, até a escrita no banco de dados, em vez de adivinhar.

Uma desenvolvedora full stack em entrevista em uma empresa SaaS de médio porte é um caso típico. Ao ser perguntada como uma funcionalidade de comentários funcionaria, ela começou pela tabela (comentários com um ID de post, um ID de autor e timestamps, indexados por post), definiu o endpoint de listagem com paginação por cursor, descreveu a renderização otimista no cliente com um rollback se o POST falhasse, e encerrou explicando como evitaria que um duplo clique publicasse duas vezes. Ela manteve cada camada breve, e as perguntas de acompanhamento do entrevistador foram direto às costuras que ela havia nomeado.

Como praticar, e onde um assistente ao vivo se encaixa?

Pratique o rastreamento em voz alta. Escolha uma funcionalidade de um app que você usa todos os dias e explique-a do esquema até a tela, depois repita injetando uma falha: a API está lenta, a escrita tem sucesso apenas parcialmente, o usuário é desconectado no meio da requisição. Grave-se, ou pratique as perguntas em uma entrevista simulada com IA, que faz perguntas de acompanhamento com base nas suas respostas faladas.

Em etapas ao vivo, o aplicativo de desktop da SubcueAI para macOS e Windows pode transcrever o entrevistador e sugerir uma estrutura para respostas de design e comportamentais onde as regras da entrevista permitirem assistência; a extensão Chrome/Edge cobre chamadas em abas do navegador, e o aplicativo para iPhone escuta uma chamada tocando em outro dispositivo. O limite honesto importa mais nas entrevistas full stack: construir uma funcionalidade e as etapas de código costumam acontecer em uma tela compartilhada, e tudo em uma tela compartilhada é visível, então a assistência fica fora de escopo ali. Avaliações on-line supervisionadas e dispositivos gerenciados pela empresa também ficam fora de escopo. A configuração está no tutorial.

FAQ

Quais são as perguntas comuns em uma entrevista de desenvolvedor full stack?

Espere perguntas sobre design e versionamento de API, paginação, requisições idempotentes, autenticação do formulário de login até o banco de dados, validação de cliente e servidor, consultas N+1, e depuração de uma funcionalidade que falha em algum ponto entre o navegador e o banco de dados.

As entrevistas full stack incluem problemas estilo LeetCode?

Muitas incluem uma etapa de estruturas de dados, mas os processos full stack se apoiam mais em tarefas práticas: construir uma pequena funcionalidade, corrigir um bug em uma base de código existente, ou projetar uma funcionalidade entre cliente e servidor.

Qual stack devo preparar para uma entrevista full stack?

Aquele da descrição da vaga. Os entrevistadores se importam mais com sua capacidade de explicar o fluxo de requisições, o estado e a modelagem de dados do que com um framework específico, mas escrever código na stack da empresa reduz o atrito nas etapas de construir uma funcionalidade.

As entrevistas full stack são mais difíceis que as de frontend ou backend?

Elas são mais amplas. Espera-se que você raciocine entre camadas e explique os trade-offs em cada costura; a profundidade em uma única camada depende da equipe, então leia a descrição da vaga para saber para qual lado a função pende.

Posso usar um assistente de IA em uma entrevista full stack?

Onde as regras permitirem, a SubcueAI pode transcrever o entrevistador e sugerir uma estrutura de resposta em etapas conversacionais e de design. Código em tela compartilhada, avaliações gravadas ou supervisionadas, e dispositivos gerenciados pela empresa ficam fora de escopo.

Perguntas relacionadas

← Mais sobre Perguntas de entrevista por cargo e tema