Nível Técnico: como validar na hora da contratação

Negócios

Validar o nível técnico de um profissional na hora da contratação é uma das principais etapas de um processo seletivo de TI. É nesse momento que a equipe de recrutamento precisa esmiuçar todas as características de um determinado profissional na busca por entender se ele é capacitado ou não para uma determinada vaga. Dentro desse processo, é importante entender que existem diversos tipos de testes que podem ser feitos e que garantem um bom resultado para o time, seja eles feitos de forma presencial ou remotamente.

Em razão da importância desta etapa de contratação, nós preparamos um artigo que traz os melhores métodos de como avaliar o nível técnico de um candidato. Confira a seguir os mais utilizados pelas empresas de tecnologia.

Teste de lógica

Na hora da contratação, um dos principais pontos que precisa ser analisado é a capacidade lógica da pessoa desenvolvedora. Sendo uma das principais características da profissão – já que toda linguagem de programação é desenvolvida por meio da lógica -, é importante que a equipe de recrutamento faça atividades que visam conhecer mais como o candidato se sai na resolução de problemas lógicos e com qual velocidade ele encontra soluções.

Esse tipo de teste é muito comum para desenvolvedores pleno e sênior, no entanto, vale aplicar também em estagiários, trainees e juniores, para conhecer o quão desenvolvida está essa habilidade no profissional e quais os principais caminhos que a equipe de tecnologia deve seguir para incluir ele no time de desenvolvimento, de modo que esteja no mesmo ritmo dos demais.

Teste técnico

Um dos testes mais comuns de serem realizados pela equipe de recrutamento é o teste técnico de projeto. Nesse tipo de teste, é possível avaliar o nível técnico do candidato por meio de uma situação/problema que o profissional pode encontrar no seu dia a dia de trabalho. O mais comum de acontecer é a empresa contratante enviar um pseudo projeto ao candidato na linguagem de programação na qual ele se candidatou.

Na maioria das vezes é dado um prazo de 7 dias ou mais para que ele resolva a situação e poste em alguma plataforma, para que a equipe de recrutamento possa avaliar como foi o seu desempenho. Entretanto, esse tipo de teste exige muita flexibilidade da empresa contratante, já que, muitas das vezes, o profissional não tem muito tempo para demandar nesse tipo de exame, principalmente se for um desenvolvedor sênior. Estudos apontam que é nessa fase que muitas empresas perdem candidatos, justamente por essa falta de flexibilidade ou por conta de uma exigência muito alta no nível do teste técnico.

Code Review

Outro exercício bastante válido para validar o nível técnico de candidatos é o code review. Para que isso funcione de maneira assertiva, pegue um código produzido pela sua equipe que contenha erros de sintaxe ou lógica e que você saiba como solucioná-los. Após isso, durante a entrevista técnica, peça ao candidato que faça uma análise do código e diga à equipe de recrutamento se ele encontrou algum erro pertinente e se ele tem sugestões de como melhorar.

Uma dica interessante para esses casos é apresentar ao candidato dois tipos de códigos: um mais simples e outro mais complexo. Dessa forma, a equipe consegue ter uma noção maior do nível exato do profissional e se ele possui nível técnico para ser contratado. Além disso, esse tipo de teste é importante para processos que precisam ser mais ágeis e também pode ser feita de maneira remota, facilitando os processos. Entretanto, é preciso tomar cuidado já que, em vagas que exigem pouca experiência, esse tipo de teste pode não ser efetivo, visto que o profissional pode não saber muito bem como solucionar os problemas.

Resolução de um problema real

Além do code review, outro método bastante pertinente de avaliação de nível técnico é a resolução de um problema real encontrado na empresa. Esse tipo de teste é interessante pois é excelente para pegar pessoas consultoras, não deixa os candidatos desconfortáveis e não exige tanta preparação. Além disso, assim como o code review, é um método bastante prático e que pode ser feito remotamente.

Um exemplo interessante, já apresentado em nosso blog uma vez, é o seguinte:

Imagine que você está contratando uma pessoa desenvolvedora sênior Node.js. Proponha ao candidato a seguinte situação:

Powered by Rock Convert

Você acabou de entrar na empresa e é justo época de Black Friday. O gerente logo marca uma reunião com a equipe e passa que a expectativa de acesso deste ano é 9x quantidade de acesso da último ano.

Alguns desenvolvedores já alertam o gestor, que terá que refazer uma parte do sistema porque no ano passado foi bem complicado atender a demanda. Conversando com time, percebe que está tudo em um monólito. O que você sugere para resolver esse problema?

É importante dar um tempo para a pessoa candidata analisar e pensar e dar algumas soluções para o problema. Não espere uma resposta pronta, e sim uma análise profunda do problema. Nesse tipo de teste é importante estar aberto a responder todas as perguntas de aprofundamento do candidato, inclusive, elas são um bom sinal, afinal, para a pessoa dar alguma sugestão de resolução ela precisa entender de fato o problema.

Pair programming

Outra maneira de avaliar o nível técnico de candidatos é a realização do Pair Programming durante a entrevista técnica. Neste teste, os candidatos à vaga precisam programar na frente da equipe de tecnologia, juntamente com a pessoa que está realizando a entrevista.

Durante o processo, é proposto uma atividade ao desenvolvedor e sua tela é compartilhada com o restante do time, buscando entender a linha de raciocínio do profissional e para ter a noção se ele pode se encaixar bem na equipe se for contratado. Porém, também é importante ser flexível nesses casos já que esse tipo de teste pode elevar o nível de ansiedade do candidato. Então é de extrema importância quebrar o gelo logo cedo na entrevista, deixando claro para a pessoa que qualquer dúvida ela pode perguntar ou pesquisar no google.

Esse tipo de teste é muito bom para saber se a pessoa consegue mesmo dar vazão em código e também não alonga muito o processo. Porém, é importante que uma preparação seja feita, pois caso algo dê errado, isso pode gerar um estresse bem alto no candidato e pode fazer com que sua empresa perca um talento.

White Board

Para quem busca fazer um processo seletivo técnico presencial, o uso do white board como ferramenta também pode o ajudar a entender o nível técnico de um profissional. Durante essa etapa, o recrutador propõe um desafio ao candidato no qual ele precisa resolver e explicar as etapas em um quadro branco. Esse tipo de teste é bastante interessante pois é possível acompanhar a organização do profissional em solucionar os problemas e qual a lógica que ele utilizará para resolvê-lo.

Além disso, isso propõe um desafio maior já que o profissional não estará equipado das suas ferramentas e terá que encontrar uma solução com o que tem em mãos naquele momento.

Análise de GitHub ou portfólio

Pra finalizar nosso artigo sobre como avaliar o nível técnico na hora da contratação, temos dois métodos que também podem ser utilizados. O primeiro é a avaliação do portfólio de cada candidato ou seus projetos hospedados no Github. O site é a principal fonte de códigos abertos de um desenvolvedor, ou seja, lá as pessoas podem colocar seus projetos pessoais ou estudos para que outros desenvolvedores possam contribuir ou visualizar.

Dessa maneira, você consegue entender a experiência desse profissional e até avaliar a qualidade dos códigos desenvolvidos. Além disso, você avalia o nível de conhecimento do desenvolvedor em determinada linguagem de programação.