P
prepair.app
Começar entrevista →
EnglishУкраїнськаРусскийDeutsch
🗄️

Junior Data EngineerPerguntas de entrevista Data Engineer

Junior · sem experiência / menos de 1 ano

Entrevistas de data engineering dependem muito de SQL e de saber se seus pipelines sobrevivem a rodar duas vezes, atrasados, ou fora de ordem. Espere perguntas de modelagem sem uma única resposta certa. Abaixo estão as perguntas mais frequentes, cada uma com uma resposta modelo. Junior: teoria básica, definições e casos práticos simples.

Experimente — sem necessidade de conta
Preparando sua pergunta…

Temas para se preparar

SQL avançado
Modelagem de dados e data warehousing
ETL vs ELT e orquestração
Spark e processamento distribuído
Streaming e Kafka
Qualidade de dados

7 perguntas de nível Junior com respostas

1

Qual é a diferença entre dados estruturados, semiestruturados e não estruturados?

Resposta

Dados estruturados têm um schema fixo e vivem em linhas e colunas — uma tabela de banco de dados, um CSV. Semiestruturados carregam o próprio schema junto e variam de linha para linha — JSON, XML, Avro. Não estruturados não têm schema nenhum: texto, imagens, áudio. Essa distinção decide onde os dados podem ser armazenados e como são consultados, por isso um pipeline geralmente converte input semiestruturado em algo colunar antes que alguém o analise.

2

Qual é a diferença entre GROUP BY e PARTITION BY?

Resposta

GROUP BY colapsa linhas — você obtém uma linha por grupo e perde o detalhe. PARTITION BY, usado com uma window function, mantém cada linha e calcula o agregado ao lado dela. Então se você quer cada pedido mais o total do cliente, PARTITION BY te dá os dois numa única passada; GROUP BY força um join de volta ao detalhe.

3

O que é uma window function e como ela se diferencia de um agregado?

Resposta

Um agregado devolve um valor por grupo; uma window function devolve um valor por linha, calculado sobre uma janela de linhas relacionadas. ROW_NUMBER, RANK, LAG e um SUM acumulado são os mais comuns. ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY created_at DESC) numera os pedidos de cada cliente do mais novo para o mais velho, que é como você pega a última linha por grupo sem um self-join.

4

Qual é a diferença entre WHERE e HAVING?

Resposta

WHERE filtra linhas antes de agrupar, HAVING filtra grupos depois. Então uma condição sobre uma coluna crua pertence ao WHERE e uma condição sobre um agregado pertence ao HAVING. Colocar um filtro simples de coluna no HAVING até funciona, mas faz o motor agrupar linhas que depois vai descartar, o que numa tabela grande é um custo real.

5

O que é um índice, e quando ele não ajuda?

Resposta

Uma estrutura separada que permite ao motor achar linhas sem varrer a tabela toda. Não ajuda quando a consulta devolve a maior parte da tabela, porque uma varredura sequencial sai mais barato do que pular pelo índice; não ajuda se o filtro da consulta não bate com as colunas líderes de um índice composto; e custa a cada escrita, já que o índice precisa ser mantido.

6

Qual é a diferença entre um Data Lake e um Data Warehouse?

Resposta

Um lake armazena dados crus na forma original e aplica o schema na leitura; um warehouse armazena dados modelados e limpos com um schema aplicado na escrita. O lake é mais barato e guarda tudo, inclusive coisas que ninguém decidiu ainda como usar. O warehouse é o que os analistas consultam. A maioria das empresas tem os dois, com o warehouse alimentado a partir do lake.

7

Qual é a diferença entre uma tabela fato e uma tabela de dimensão?

Resposta

Uma tabela fato guarda os eventos mensuráveis — uma venda, um clique — com medidas numéricas e foreign keys. As tabelas de dimensão guardam o contexto descritivo para o qual essas chaves apontam: cliente, produto, data. Os fatos crescem constantemente e são estreitos; as dimensões são largas e mudam devagar. Confundir isso é o erro de modelagem mais comum, e aparece como consultas que ninguém consegue escrever.

🦎

Só ler as respostas não basta

Numa entrevista de verdade você fala sob pressão. O Cam faz essas mesmas perguntas, avalia cada resposta e mostra exatamente o que melhorar.

Praticar entrevista de Junior Data Engineer →
Grátis · 3 entrevistas por mês

Outros níveis — Data Engineer

Middle Data EngineerSenior Data EngineerTodas as perguntas de Data Engineer

Outras especializações

🔍Junior QA Manual🤖Junior QA AutomationJunior Java Backend🐍Junior Python Backend🐘Junior PHP Backend🦫Junior Go Backend🟢Junior Node.js Backend💎Junior Ruby on Rails🔷Junior C++🟨Junior JavaScript