Teste para engenheiros de software em processos seletivos de início de carreira
Avalie a aplicação de fundamentos de engenharia antes de dedicar o tempo da entrevista a questões mais aprofundadas e específicas da vaga.
- 10 minutos
- 15 perguntas
- Nível inicial
- Múltipla escolha
- Perguntas em inglês (inglês)
- Celular e computador
A resposta curta
Este teste de seleção, com duração de 10 minutos e 15 questões, avalia como profissionais de engenharia de software de nível inicial aplicam estruturas de dados, avaliam a eficiência de algoritmos e raciocinam sobre fundamentos de programação e computação. Os candidatos respondem a situações breves, pequenas tabelas e trechos curtos de código em Python, Java ou JavaScript. Use o resultado como evidência para análise de candidatos a vagas de engenharia de nível inicial e júnior, não como decisão de contratação.
O que mede
Conhecimento de estruturas de dados, eficiência de algoritmos e conceitos fundamentais de programação e computação, aplicado a trechos curtos de código e situações práticas.
Arrays, listas, pilhas e filas
Rastrear o resultado de um trecho curto de código em um array, uma pilha ou uma fila e escolher a estrutura adequada para uma operação em que o primeiro ou o último a entrar é o primeiro a sair.
Árvores, grafos e tabelas hash
Escolher uma árvore, um grafo ou uma tabela hash para situações como pastas de arquivos e rotas de entrega, e acompanhar uma consulta ou busca nessas estruturas.
Eficiência de algoritmos
Avaliar como o trabalho envolvido em um loop ou uma busca aumenta conforme os dados de entrada crescem e qual de duas abordagens escala melhor.
Fundamentos de programação e computação
Ler trechos curtos de código em Python, Java ou JavaScript, compostos por loops, condicionais, funções e indexação, e dizer o que fazem ou retornam.
Formatos de pergunta
Múltipla escolha
A pessoa candidata: Lê uma situação, tabela ou afirmação curta e escolhe a resposta correta ou todas as respostas corretas.
Você verá: Se o candidato conhece o conteúdo o suficiente para aplicá-lo, e não apenas reconhecê-lo.
15 questões em 10 minutos, apresentadas uma de cada vez.
Funções para as quais este teste é indicado
Vagas de engenharia em início de carreira e nível júnior: desenvolvimento de software, front-end e back-end para web, full-stack, desenvolvimento mobile, engenharia de qualidade e testes, desenvolvimento de jogos e análise de sistemas.
Como este teste pode contribuir para o seu processo seletivo
Avalie o raciocínio aplicado, não apenas a experiência no currículo
Um currículo pode descrever projetos e linguagens, mas talvez não mostre como a pessoa candidata acompanha um trecho curto de código ou escolhe uma estrutura de dados para determinada situação. Este teste para engenheiros de software oferece evidências de como ela aplica fundamentos relacionados a arrays, listas, pilhas, filas, árvores, grafos e tabelas hash.
Avalie os principais tópicos em pouco tempo
O teste tem 15 questões e dura 10 minutos. Ele aborda eficiência de algoritmos e fundamentos de programação e computação, oferecendo uma visão inicial de várias competências fundamentais sem exigir que os candidatos façam um exercício longo antes de você decidir quem entrevistar.
Prefira respostas que exijam aplicação
As pessoas candidatas leem uma situação, tabela ou afirmação curta e, em seguida, escolhem a resposta certa ou todas as respostas certas. Cenários breves e trechos de código em Python, Java ou JavaScript ajudam você a avaliar se a pessoa consegue aplicar o conteúdo, em vez de apenas reconhecer uma definição.
Mantenha a avaliação focada em atividades de início de carreira
Use esta avaliação de engenharia de software como um dos fatores considerados para vagas de nível inicial e júnior em engenharia de software, front-end e back-end para web, full-stack, mobile, qualidade e testes, desenvolvimento de jogos ou análise de sistemas. Ela pode ajudar você a dedicar parte da entrevista a exemplos relacionados à função.
O que você recebe para cada candidato
- Permaneceu na aba do teste durante todo o teste
- Sem respostas copiadas e coladas
- Respondeu em ritmo constante
Pontuações, perfis e sinais de integridade são evidências para você analisar junto com uma entrevista, nunca uma decisão automática.
Sinais de integridade do teste para análise do empregador
Cada pessoa candidata recebe um conjunto diferente de questões, selecionadas de grandes bancos de questões. A ordem das questões muda a cada tentativa, e as opções de resposta são embaralhadas. O navegador recebe uma questão por vez; os gabaritos ficam nos servidores da HireValid. O cronômetro funciona no servidor, então, se a página for recarregada, a mesma questão será exibida com o tempo restante. As pessoas candidatas não podem copiar nem selecionar o texto das questões, e uma tentativa de cópia bloqueada é registrada na linha do tempo. A HireValid registra sinais como o tempo fora da aba do teste, textos colados nas respostas e respostas enviadas mais rápido do que seria possível ler uma questão. Esses sinais são resumidos em um Integrity Score e em uma linha do tempo de evidências para você analisar; o sistema não toma decisões por conta própria. Com o consentimento da pessoa candidata, você pode adicionar fotos feitas pela webcam em momentos aleatórios.
Como evitamos fraudes com IA · Sinais de integridade
Use a pontuação como uma das evidências
Analise a pontuação junto com uma amostra de trabalho relevante para a vaga e uma entrevista estruturada. Para a amostra de trabalho, escolha uma tarefa curta que represente a função, como acompanhar um trecho de código ou explicar a escolha de uma estrutura de dados. Mantenha a tarefa relacionada ao trabalho que a pessoa candidata faria e avalie seu raciocínio, em vez de tratar um único resultado como um veredito. Use as mesmas perguntas de entrevista estruturada com as pessoas candidatas à mesma vaga e, depois, compare os exemplos delas com as evidências do teste. Para mais orientações, consulte o guia de testes pré-contratação e como criamos nossos testes.
Perguntas de entrevista estruturada para aprofundar a avaliação
Conte sobre uma vez em que você escolheu uma estrutura de dados para uma tarefa de programação. Como decidiu e o que levou em consideração?
Procure identificar uma tarefa concreta, o raciocínio da pessoa candidata sobre a estrutura e uma explicação clara dos prós e contras considerados.
Explique passo a passo como você rastrearia uma função curta que usa um loop e uma lista para gerar um resultado.
Procure uma explicação passo a passo de como os valores mudam e de como a pessoa candidata verifica o resultado, em vez de uma definição decorada.
Descreva uma situação em que a quantidade de dados de entrada poderia afetar o tempo de execução de um algoritmo. Como você investigaria isso?
Procure entender como a pessoa analisaria o trabalho conforme os dados de entrada aumentassem e como explicaria seu raciocínio de forma clara para alguém da equipe.
Conte sobre um conceito de programação ou computação que você precisou aplicar em um projeto. Qual era a tarefa e como você usou esse conceito?
Procure um exemplo específico que mostre como a pessoa candidata relaciona um conceito fundamental a uma tarefa prática e explica sua contribuição.
Entenda as pontuações e os parâmetros de comparação
Vagas e níveis adequados para este teste
O teste foi desenvolvido para vagas de engenharia de nível inicial e júnior, incluindo engenharia de software, front-end e back-end para web, full-stack, mobile, qualidade e testes, desenvolvimento de jogos e análise de sistemas. As questões curtas avaliam o raciocínio fundamental, não uma especialidade específica de nível sênior. Para uma vaga de desenvolvedor de nível inicial, você também pode consultar a página da função de desenvolvedor júnior ao planejar as demais etapas do processo seletivo.
O que os candidatos vão encontrar
As pessoas candidatas têm 10 minutos para responder a 15 questões de múltipla escolha. Cada questão apresenta uma situação, tabela ou afirmação curta e pede que escolham a resposta certa ou todas as respostas certas. Alguns itens usam cenários breves, tabelas pequenas ou trechos curtos de código em Python, Java ou JavaScript. O teste usa recursos comuns a várias linguagens, como loops, condicionais, funções, listas e indexação. É permitido usar papel para rascunho, e não é possível voltar a uma questão anterior. Antes do teste, as pessoas candidatas podem responder a quatro questões de prática em quatro minutos.
Use linguagem e contextos que priorizem o raciocínio
O código usa recursos comuns a várias linguagens, com nomes simples e sem truques que dependam de particularidades de uma linguagem. Os cenários usam contextos neutros, como filas de tarefas, pastas de arquivos e rotas de entrega, com nomes de diferentes origens e sem expressões idiomáticas, referências a dinheiro ou conhecimentos locais. A linguagem é simples para que o teste avalie o raciocínio de engenharia, e não o domínio do inglês.
Equidade e adaptações
O código usa apenas recursos comuns a várias linguagens (loops, condicionais, funções, listas e indexação), com nomes simples e sem truques que dependam de particularidades de uma linguagem. Os cenários usam contextos neutros, como filas de tarefas, pastas de arquivos e rotas de entrega, com nomes de diferentes origens e sem expressões idiomáticas, referências a dinheiro ou conhecimentos locais. Todas as pessoas candidatas podem usar papel para rascunho. A linguagem é simples para que o teste avalie o raciocínio de engenharia, e não o domínio do inglês.
Você pode oferecer tempo extra a qualquer candidato como uma adaptação. Os resultados são evidências para uma pessoa analisar, nunca uma decisão automática.
Provisória: a confiabilidade é informada quando 200 pessoas candidatas tiverem concluído o teste.
Detalhes do teste
Uma avaliação breve e cronometrada dos fundamentos que dão base ao trabalho de quem está começando na engenharia de software: escolher e acompanhar estruturas de dados, avaliar como o custo de um algoritmo aumenta e entender o básico sobre o funcionamento de programas e computadores. As questões apresentam situações curtas, tabelas pequenas e trechos breves de código em Python, Java ou JavaScript. Assim, a pessoa candidata precisa raciocinar sobre o que o código faz, em vez de apenas lembrar definições.
- As perguntas estão em inglês.
- Recursos permitidos: Papel para rascunho.
- Cada pergunta é respondida uma única vez, em ordem, sem poder voltar.
- 4 questões para praticar, 4 minutos, antes do teste cronometrado.
Python, Java, JavaScript são marcas registradas de seus respectivos proprietários. A HireValid não é afiliada a eles nem conta com o endosso deles.
Perguntas frequentes
O que o teste de engenharia de software avalia?+
O teste avalia como as pessoas candidatas aplicam estruturas de dados, eficiência de algoritmos e conceitos fundamentais de programação e computação a trechos curtos de código e cenários. As estruturas abordadas incluem arrays, listas, pilhas, filas, árvores, grafos e tabelas hash. As questões usam situações, tabelas, afirmações ou trechos de código breves em Python, Java ou JavaScript.
Como devo usar este teste de avaliação para engenheiros de software?+
Use-o como uma fonte inicial de evidências para uma vaga de engenharia de nível inicial ou júnior e, em seguida, analise o resultado junto com uma amostra de trabalho relevante para a função e uma entrevista estruturada. O teste aborda tópicos fundamentais, incluindo o rastreamento de estruturas de dados e a avaliação da eficiência de algoritmos. Ele não é uma decisão de contratação nem substitui a análise do trabalho e das respostas do candidato.
Quanto tempo dura o teste de habilidades para engenheiros de software?+
O teste tem 15 questões e duração de 10 minutos. Primeiro, os candidatos podem responder a quatro questões de prática em quatro minutos. Eles podem usar papel para rascunho, mas não podem voltar a uma questão depois de avançar. A sessão curta permite avaliar com foco estruturas de dados, eficiência de algoritmos e fundamentos de programação e computação.
Para quais vagas de engenharia esta avaliação de engenharia de software pode ser usada?+
Ele foi desenvolvido para vagas em início de carreira e de nível júnior em desenvolvimento de software, front-end e back-end para web, full-stack, desenvolvimento mobile, engenharia de qualidade e testes, desenvolvimento de jogos e análise de sistemas. As questões se concentram nos fundamentos, e não em uma especialidade específica. Por isso, use a pontuação junto com outras evidências relacionadas à vaga.
Este teste para entrevista de engenheiros de software é uma amostra de trabalho?+
Não. É um teste cronometrado de múltipla escolha, com cenários breves, tabelas pequenas, afirmações e trechos curtos de código. Você pode complementá-lo com uma amostra de trabalho separada que represente a vaga, como pedir à pessoa candidata que acompanhe um trecho de código ou explique a escolha de uma estrutura de dados. Analise a amostra e o teste como evidências, não como vereditos isolados.
A pessoa candidata precisa conhecer Python, Java e JavaScript?+
Não. Os trechos de código aparecem em Python, Java ou JavaScript, mas usam apenas recursos comuns a várias linguagens, como loops, condicionais, funções, listas e indexação, com nomes simples. Nenhuma questão depende de particularidades de uma linguagem, então uma pessoa candidata que tenha aprendido qualquer uma delas consegue acompanhar o código. A confiabilidade é provisória e é informada quando 200 pessoas candidatas tiverem concluído o teste.
Testes relacionados
Algoritmos para engenharia de software
10 minutos, Habilidades específicas da função
ConheçaArquiteto de software
10 minutos, Habilidades específicas da função
ConheçaDesenvolvimento de software para blockchain
10 minutos, Habilidades específicas da função
ConheçaArquitetura de sistemas computacionais
10 minutos, Habilidades específicas da função
ConheçaEngenharia de QA
10 minutos, Habilidades específicas da função
ConheçaProgramação: tabelas hash
35 minutos, Habilidades de programação
ConheçaUse o teste Engenheiro de software na sua próxima contratação
O plano Free inclui 5 testes essenciais; os planos pagos incluem Biblioteca completa de testes.