Ícone do site Blog | Dorck Coding

3 maneiras de testar programadores antes de contratar

Programadores podem ser muitas coisas: inventores, solucionadores de problemas, investigadores, etc. Então, ao contratar um desenvolvedor, simplesmente revisar o currículo e analisar o portfólio não é o bastante para contratar. Embora esses itens possam fornecer uma amostra das habilidades e uma lista de experiências passadas, o que eles não mostram como o programador se comporta em tais situações, como inventar algo, resolver um problema ou como ele trabalha em equipe.

Essas habilidades são melhor vistas através de testes. O único ponto importante é, dentre tantos tipos de testes comuns de seleção, como as empresas podem saber qual método será o mais útil na hora de escolher um programador para sua equipe?

Testes Automatizados

Os testes automatizados são uma das maneiras mais simples de testar um programador, filtrando os altamente qualificados dos novatos.

Plataformas como Tests4Geek e Codility oferecem uma biblioteca de testes que abrangem uma habilidade apenas, e também abrangem um grupo de habilidades, por exemplo Web Design (HTML, CSS e Javascript). Essas plataformas permitem que os usuários enviem links desses testes para os candidatos e recebam os resultados.

O tempo de execução desses testes para que os programadores completem e enviem as respostas podem variar entre minutos a dias. Finalizando os envios, a plataforma envia para o usuário os resultados de todos os testes.

Embora os resultados dos testes possam mostrar uma grande visão das habilidades dos profissionais, também há alguns pontos negativos, principalmente nos de longo prazo. Para os profissionais pouco qualificados, este longo período para completar o teste, deixa-os com a oportunidade de encontrar ajuda e respostas para as questões mais difíceis, finalizando com uma pontuação enganosa. Já para programadores mais qualificados, testes longos podem exigir um tempo que eles não possuem.

Embora esses testes possam ser úteis em alguns casos, eles também podem ir contra os esforços de uma empresa. Sempre é bom avaliar o portfólio do profissional e sua experiência, para verificar se realmente é necessário aplicar o teste ou se requer menos tempo para realizar.

Desafios

Os desafios de programação podem ser uma excelente maneira de identificar rapidamente programadores altamente qualificados. A maior qualidade desses testes é que eles são oportunos e avaliam não apenas a habilidade de codificação do profissional, mas também a maneira de resolver problemas do mesmo.

O teste FizzBuzz é um excelente exemplo e altamente recomendado pelos programadores como uma ótima maneira de reconhecer os novatos e os experientes. À primeira vista, as perguntas do FizzBuzz parecem bastante simples, mas não se engane. O questionário é chato e fácil de propósito e, na realidade, as perguntas são bastante desafiadoras. Apenas programadores excepcionais podem completar o teste com altas pontuações.

Os prazos para esses desafios podem variar, mas em média, os mesmos não requerem mais do que algumas horas.

A empresa pode criar seus próprios desafios para contratação, mas tentem sempre tender para o lado lógico e solução de problemas, não se importando muito com a linguagem que será utilizada, pois se o profissional for bom, vai resolver de qualquer maneira.

Live Coding

Os eventos de Live Coding (Codificação ao vivo) podem mostrar uma variedade de itens, incluindo métodos de resolução de problemas, bem como a capacidade de colaboração e comunicação dentro de uma equipe.

Um bom início é introduzindo um candidato em algum projeto da sua empresa, ou um projeto similar, e identificar aproximadamente as áreas onde pode aparecer alguns problemas. O contratante pode usar um compartilhamento de tela para observar como os candidatos localizam e resolvem os problemas.

Os testes Live Coding geralmente tem a duração de 15 minutos a uma hora no máximo.

Adicionar um programador, ou pelo menos alguém com um certo conhecimento de programação, a equipe de contratação é ideal para que esses testes sejam avaliados com precisão.

Para empresas que não querem ou não são capazes de realizar esses tipos de testes, Hackathons podem ser uns substitutos excelentes. Nesses eventos, desenvolvedores de software e web se juntam para colaborar em um determinado tipo de aplicação. Cada evento Hackathon tem um foco particular, então a empresa deve procurar um determinado evento que encaixe no conjunto de habilidades que a mesma busca.

Conclusão

Antes de utilizar qualquer um desses métodos de teste, as empresas devem reservar um tempo para aprender pelo menos o básico das habilidades do programador, seja desenvolvimento back-end, desenvolvimento front-end, UX Design, etc. Compreender os termos e processos básicos pode ajudar a evitar a falta de comunicação durante o processo de contratação.

Uma vez que sua equipe esteja pronta para testar os desenvolvedores, não perca muito tempo revisando arquivos e realizando entrevistas. Na maioria dos casos, o teste é a parte mais útil do processo de contratação, sendo que quanto mais atenção na etapa do teste, melhores e maiores os resultados!

Sair da versão mobile