Sete maneiras principais de testar rapidamente as competências de especialistas em TI antes de uma entrevista

Contratar especialistas em TI não é uma tarefa fácil. Em primeiro lugar, atualmente falta pessoal experiente no mercado, eles entendem isso. Os candidatos muitas vezes não estão dispostos a gastar muito tempo nos “eventos de seleção” de um empregador se não estiverem primeiro interessados. A prática anteriormente popular de “faremos um teste por mais de 8 horas” não funciona mais. Para a avaliação inicial de conhecimentos e triagem dos candidatos antes da realização de uma entrevista técnica completa, é necessário utilizar outros métodos mais rápidos. Em segundo lugar, para uma avaliação qualitativa de conhecimentos e habilidades, você mesmo precisa possuir essas habilidades ou envolver um colega que as possua. Essas dificuldades podem ser resolvidas usando os métodos que discutirei neste artigo. Eu mesmo uso esses métodos e compilei uma espécie de classificação para mim.

Então, minhas 7 principais maneiras de testar rapidamente as competências dos especialistas em TI antes de uma entrevista:

7. Estude o portfólio do candidato, exemplos de código e repositórios abertos.

6. Uma tarefa de teste de curta duração (concluída em 30-60 minutos).

5. Uma breve entrevista expressa sobre competências por telefone/Skype (como um questionário, apenas online e por voz).

4. Live-Doing (Codificação) – resolvemos um problema simples em tempo real com uma tela compartilhada.

3. Questionários com perguntas abertas sobre experiência.

2. Testes curtos de múltipla escolha com tempo limitado para conclusão.

1. Tarefa de teste em vários estágios, o primeiro estágio é concluído antes da entrevista.

A seguir, considerarei detalhadamente esses métodos, suas vantagens e desvantagens e as situações em que utilizo um ou outro método para testar rapidamente as competências dos programadores.

Sete maneiras principais de testar rapidamente as competências de especialistas em TI antes de uma entrevista

No artigo anterior sobre funil de contratação habr.com/en/post/447826 Realizei uma pesquisa entre os leitores sobre maneiras de testar rapidamente as habilidades dos especialistas em TI. Neste artigo falo sobre os métodos que pessoalmente gosto, porque gosto deles e como os utilizo. Estou largando em primeiro lugar e terminando em sétimo.

1. Tarefa de teste em vários estágios, o primeiro estágio é concluído antes da entrevista

Considero este método de testar as competências do desenvolvedor o melhor. Ao contrário de uma tarefa de teste tradicional, quando você diz “pegue a tarefa e vá em frente”, na minha versão, o processo de conclusão da tarefa de teste é dividido em etapas - discussão e compreensão da tarefa, desenho de uma solução e avaliação dos recursos necessários , diversas etapas de implementação da solução, documentação e envio de aceitação da decisão. Essa abordagem está mais próxima da tecnologia moderna normal de desenvolvimento de software do que apenas “pegar e fazer”. Detalhes abaixo.

Em que casos utilizo esse método?

Para meus projetos, costumo contratar trabalhadores remotos que desenvolvem uma parte separada, separada e relativamente independente do projeto. Isto reduz a necessidade de comunicação entre os funcionários, muitas vezes a zero. Os funcionários não se comunicam entre si, mas com o gerente do projeto. Portanto, é importante para mim avaliar imediatamente a capacidade de uma pessoa de compreender rapidamente um problema, fazer perguntas esclarecedoras, desenvolver de forma independente um plano de ação para resolver o problema e estimar os recursos e o tempo necessários. Uma tarefa de teste de vários estágios me ajuda muito com isso.

Como implementar

Identificamos e formulamos uma tarefa independente e original relacionada ao projeto no qual o desenvolvedor deverá trabalhar. Costumo descrever como tarefa um protótipo simplificado da tarefa principal ou produto futuro, para cuja implementação o desenvolvedor terá que enfrentar os principais problemas e tecnologias do projeto.

A primeira etapa da tarefa de teste é a familiarização com o problema, o esclarecimento do que não está claro, o desenho de uma solução, o planejamento das etapas para resolver o problema e a estimativa do tempo para concluir as etapas individuais e toda a tarefa de teste. No final, espero um documento de 1 a 2 páginas que descreva o plano de ação do desenvolvedor e a estimativa de tempo. Peço também aos candidatos que indiquem quais das etapas gostariam de implementar integralmente para confirmar as suas competências na prática. Não há necessidade de programar nada ainda.

Esta tarefa (a mesma) é atribuída a vários candidatos. As respostas dos candidatos são esperadas no dia seguinte. A seguir, após 2 a 3 dias, quando todas as respostas forem recebidas, analisamos o que os candidatos nos enviaram e quais as perguntas esclarecedoras que fizeram antes de iniciar a tarefa. Com base nessas informações, você pode convidar quantos candidatos precisar para a próxima fase.

A próxima etapa é uma breve entrevista. Já temos algo para conversar. O candidato já tem uma ideia aproximada da área temática do projeto em que irá trabalhar. O principal objetivo desta entrevista é responder às questões técnicas do candidato e motivá-lo a cumprir a tarefa principal do teste – programar a parte da tarefa que ele próprio escolheu. Ou a parte que pretende ver implementada.

É sempre muito interessante ver que parte da tarefa o desenvolvedor deseja implementar. Algumas pessoas preferem descompactar a estrutura do projeto, decompor a solução em módulos e classes, ou seja, passar de cima para baixo. Alguns destacam uma subtarefa separada, a mais importante na sua opinião, sem prescrever a solução como um todo. Ou seja, eles vão de baixo para cima - da subtarefa mais complexa até a solução completa.

Vantagens

Podemos perceber a erudição do candidato, a aplicabilidade de seus conhecimentos ao nosso projeto e o desenvolvimento de habilidades de comunicação. Também é fácil comparar candidatos entre si. Geralmente rejeito candidatos que fornecem estimativas muito otimistas ou muito pessimistas sobre quanto tempo levará para concluir uma tarefa. Claro, tenho minha própria estimativa de tempo. A pontuação baixa de um candidato provavelmente indica que a pessoa não entendeu a tarefa corretamente e concluiu o teste superficialmente. Uma estimativa excessiva de tempo geralmente indica que o candidato tem pouco conhecimento da área temática e não tem experiência nos tópicos de que preciso. Não rejeito imediatamente os candidatos com base na sua pontuação, mas antes peço-lhes que justifiquem a sua avaliação se a avaliação ainda não tiver sido suficientemente motivada.

Para alguns, este método pode parecer complicado e caro. Minha avaliação da intensidade de trabalho do uso deste método é a seguinte: leva de 30 a 60 minutos para descrever a tarefa do teste e depois de 15 a 20 minutos para verificar a resposta de cada candidato. Para os candidatos, a conclusão de tal tarefa de teste geralmente não leva mais do que 1 a 2 horas, enquanto eles estão imersos na essência dos problemas que terão que resolver no futuro. Já nesta fase, o candidato pode ficar desinteressado e recusar-se a comunicar consigo, tendo perdido um pouco de tempo.

Contras:

Em primeiro lugar, você precisa criar uma tarefa de teste original, isolada e ampla; isso nem sempre é possível. Em segundo lugar, nem todos os candidatos compreendem imediatamente que a programação não é necessária numa primeira fase. Algumas pessoas começam a programar imediatamente e desaparecem por alguns dias, depois enviam-lhes uma tarefa de teste totalmente concluída. Formalmente, eles falharam nesta tarefa de teste porque não fizeram o que lhes era exigido. Mas, ao mesmo tempo, eles tiveram sucesso se enviaram uma solução adequada para toda a tarefa de teste. Para eliminar tais incidentes, costumo ligar para todos os candidatos que receberam a tarefa 2 dias após a emissão da tarefa e saber como estão.

2. Testes curtos de múltipla escolha com limites de tempo

Não uso esse método com frequência, embora goste muito dele e o considere uma das melhores maneiras de testar competências rapidamente. Escreverei um artigo separado sobre esse método em um futuro próximo. Tais testes são amplamente utilizados em diversas áreas do conhecimento. O exemplo mais marcante e típico é o exame teórico para obtenção da carteira de habilitação. Na Rússia, este exame contém 20 questões que devem ser respondidas em 20 minutos. Um erro é permitido. Se você cometer dois erros, deverá responder corretamente 10 perguntas adicionais. Este método é altamente automatizado.

Infelizmente, não vi boas implementações de tais testes para programadores. Se você conhece boas implementações prontas de tais testes para programadores, escreva nos comentários.

Como implementar

Trabalhei com autoimplementação de testes semelhantes por empregadores no atendimento de pedidos como recrutador terceirizado. É perfeitamente possível implementar tal teste. Por exemplo, usando o Formulários Google. O principal problema está na elaboração de perguntas e opções de resposta. Normalmente, a imaginação dos empregadores é suficiente para 10 perguntas. Infelizmente, no Formulários Google é impossível implementar rotação de perguntas do pool e limites de tempo. Se você conhece uma boa ferramenta online para criar seus próprios testes, onde pode limitar o tempo de realização do teste e organizar a seleção de diferentes questões para diferentes candidatos, escreva sobre esses serviços nos comentários.

Em que casos utilizo esse método?

Agora utilizo esse método a pedido dos empregadores, caso eles tenham testes prontos que possam ser aplicados aos candidatos. Também é possível combinar esses testes com o quarto método da minha avaliação – pedimos ao candidato que compartilhe sua tela e faça o teste. Ao mesmo tempo, você pode discutir perguntas e opções de resposta com ele.

Vantagens

Se bem implementado, este método é autônomo. O candidato pode escolher um horário conveniente para ele fazer a prova e você não precisa perder muito tempo.

Contras:

A implementação de alta qualidade deste método é bastante cara e não é muito conveniente para uma pequena empresa que ocasionalmente contrata novos funcionários.

3. Questionários com perguntas abertas sobre experiência

Trata-se de um conjunto de perguntas abertas que convidam o candidato a refletir sobre sua experiência. No entanto, não oferecemos opções de resposta. Perguntas abertas são aquelas que não podem ser respondidas de forma simples e monossilábica. Por exemplo, lembra-se do problema mais difícil que você resolveu usando tal ou tal estrutura? Qual foi a principal dificuldade para você? Tais questões não podem ser respondidas em monossílabos. Mais precisamente, a única resposta simples é que não tenho essa experiência, não trabalhei com esta ferramenta.

Como implementar

Facilmente implementado usando o Formulários Google. O principal é fazer perguntas. Eu uso vários designs padrão.

Conte-nos sobre o último projeto que você fez com a ajuda de XXX, o que foi mais difícil para você neste projeto?

Quais são as principais vantagens da tecnologia XXX para você, dê exemplos da sua experiência?
Tendo escolhido a tecnologia XXX, que outras alternativas considerou e porque escolheu XXX?

Em que situações você escolheria a tecnologia AAA em vez da BBB?
Conte-nos sobre o problema mais difícil que você resolveu usando XXX, qual foi a principal dificuldade?

Conseqüentemente, essas construções podem ser aplicadas a muitas tecnologias em sua pilha de trabalho. Não é fácil responder a essas perguntas com frases-modelo da Internet, pois são pessoais e referem-se à experiência pessoal. Ao responder a essas perguntas, o candidato costuma ter em mente a ideia de que na entrevista qualquer uma de suas respostas pode ser desenvolvida na forma de perguntas adicionais. Portanto, se não houver experiência, os candidatos muitas vezes se retiram, percebendo que mais conversas podem ser inúteis.

Em que casos utilizo esse método?

Ao trabalhar com pedidos de seleção de especialistas, caso o cliente não tenha proposto seu próprio método de teste de competências primárias, utilizo este método. Já preparei questionários sobre vários temas e não me custa nada utilizar este método para um novo cliente.

Vantagens

Fácil de implementar usando o Formulários Google. Além disso, um novo levantamento pode ser feito com base no anterior, substituindo os nomes das tecnologias e ferramentas por outros. Por exemplo, uma pesquisa sobre experiência com React não será muito diferente de uma pesquisa sobre experiência com Angular.

A compilação desse questionário leva de 15 a 20 minutos e os candidatos geralmente gastam de 15 a 30 minutos respondendo. O investimento de tempo é pequeno, mas recebemos informações sobre a experiência pessoal do candidato, a partir das quais podemos construir e tornar cada entrevista com os candidatos única e mais interessante. Normalmente, a duração da entrevista após esse questionário é mais curta, pois não é necessário fazer perguntas simples e semelhantes.

Contras:

Para distinguir a resposta do próprio candidato de uma resposta “pesquisada no Google”, você precisa entender o assunto. Mas isso vem rapidamente com a experiência. Depois de visualizar de 10 a 20 respostas, você aprenderá a distinguir as respostas originais dos candidatos daquelas encontradas na Internet.

4. Live-Doing (Codificação) – resolvendo um problema simples em tempo real com uma tela compartilhada

A essência deste método é pedir ao candidato que resolva um problema simples e observe o processo. O candidato pode usar qualquer coisa, não há proibição de busca de informações na internet. O candidato pode sentir estresse por ser observado no trabalho. Nem todos os candidatos concordam com esta opção de avaliação das suas competências. Mas, por outro lado, esse método permite ver que conhecimento uma pessoa tem na cabeça, o que ela pode usar mesmo em uma situação estressante e quais informações ela irá buscar em um mecanismo de busca. O nível do candidato é perceptível quase imediatamente. Os iniciantes usam os recursos mais básicos e até primitivos da linguagem e geralmente começam a implementar manualmente a funcionalidade das bibliotecas básicas. Candidatos mais experientes são bem versados ​​em classes, métodos e funções básicas e podem resolver rapidamente um problema simples - 2 a 3 vezes mais rápido que os iniciantes, usando a funcionalidade da biblioteca de linguagem básica que lhes é familiar. Mesmo os candidatos mais experientes costumam começar por falar sobre diferentes abordagens para resolver um problema e apresentar diversas opções de solução, perguntando qual opção gostaria de ver implementada. Tudo o que o candidato faz pode ser discutido. Mesmo partindo da mesma tarefa, as entrevistas acabam por ser muito diferentes, assim como as soluções dos candidatos.

Como variação desse método, você pode solicitar ao candidato que faça algum teste para testar competências profissionais, justificando a escolha de uma ou outra das opções de resposta. Ao contrário dos testes regulares, você descobrirá quão razoável foi a escolha das respostas. Você pode criar suas próprias variações desse método, levando em consideração as características da sua vaga.

Como implementar

Este método é facilmente implementado usando Skype ou outro sistema de comunicação de vídeo semelhante que permite compartilhar a tela. Você mesmo pode encontrar problemas ou usar sites como Code Wars e uma variedade de testes prontos.

Em que casos utilizo esse método?

Quando seleciono programadores e não fica claro no currículo qual o nível de conhecimento do candidato, ofereço aos candidatos uma entrevista neste formato. Na minha experiência, cerca de 90% dos desenvolvedores não se importam. Eles ficam satisfeitos porque desde a primeira entrevista começa a comunicação sobre programação, e não perguntas estúpidas como “onde você se vê daqui a 5 anos”.

Vantagens

Apesar do estresse e da ansiedade do candidato, o nível geral de habilidade do candidato é imediata e claramente visível. As capacidades de comunicação do candidato também se tornam claramente visíveis – como ele raciocina, como explica e motiva a sua decisão. Se precisar discutir um candidato com colegas, é fácil fazer uma gravação de vídeo da sua tela e depois mostrar a entrevista para outras pessoas.

Contras:

A comunicação pode ser interrompida. Devido à ansiedade, o candidato pode começar a ficar estúpido. Nessa situação, você pode fazer uma pausa e dar-lhe tempo para pensar sozinho na tarefa, ligar novamente após 10 minutos e continuar. Se depois disso o candidato se comportar de maneira estranha, vale a pena tentar outra forma de avaliar competências.

5. Breve entrevista expressa sobre habilidades por telefone/Skype

Esta é simplesmente uma conversa de voz por telefone, Skype ou outro sistema de comunicação de voz. Ao mesmo tempo, podemos avaliar a capacidade de comunicação do candidato, a sua erudição e visão. Você pode usar um questionário como plano de conversa. Alternativamente, você pode discutir mais detalhadamente com o candidato as respostas ao seu questionário.

Como implementar

Combinamos uma conversa com o candidato e ligamos. Fazemos perguntas e registramos as respostas.

Em que casos utilizo esse método?

Costumo usar esse método junto com um questionário quando as respostas do candidato me parecem originais ou pouco convincentes. Converso com o candidato sobre as questões do questionário e descubro mais detalhadamente sua opinião. Considero tal conversa obrigatória quando as habilidades de comunicação do candidato e a capacidade de formular seus pensamentos de forma simples e clara são importantes.

Vantagens

Sem falar abertamente sobre tópicos profissionais, geralmente é impossível determinar quão bem um candidato pode expressar seus pensamentos.

Contras:

A principal desvantagem é o tempo adicional gasto. Portanto, utilizo esse método além de outros, se necessário. Além disso, há candidatos que falam bem sobre temas profissionais, mas possuem pouco conhecimento prático. Se você precisa de um programador que resolva problemas de forma consistente e eficiente, então é melhor escolher outro método de teste de competência primária. Se você precisa de um gestor ou analista, ou seja, um especialista que traduza da linguagem humana para “programador” e vice-versa, então este método de testar competências será muito útil.

6. Tarefa de teste de curta duração (concluída em 30-60 minutos)

Para várias profissões, é importante que um especialista seja capaz de encontrar rapidamente uma solução para um problema. Via de regra, os problemas não são difíceis de resolver, mas o tempo que leva para resolvê-los é importante.

Como implementar

Concordamos com o candidato o prazo para conclusão da tarefa do teste. Na hora marcada, enviamos ao candidato os termos da tarefa e verificamos se ele compreende o que lhe é exigido. Registramos o tempo gasto pelo candidato na resolução do problema. Analisamos a solução e o tempo.

Em que casos utilizo esse método?

Na minha prática, esse método foi usado para testar as competências de especialistas de suporte técnico, programadores SQL e testadores (QA). As tarefas eram como “encontrar áreas problemáticas e descobrir como resolver o problema”, “otimizar a consulta SQL para que funcione 3 vezes mais rápido”, etc. Claro, você pode criar suas próprias tarefas. Para desenvolvedores iniciantes, este método também pode ser usado.

Vantagens

Gastamos nosso tempo apenas redigindo e verificando a tarefa. O candidato pode escolher um horário que lhe seja conveniente para realizar a tarefa.

Contras:

A principal desvantagem é que soluções para seus problemas ou similares podem ser postadas na Internet, por isso você precisa ter uma série de opções e apresentar novas tarefas periodicamente. Se você precisar testar sua velocidade de reação e horizontes, eu pessoalmente escolho testes cronometrados (método nº 2).

7. Estude o portfólio do candidato, exemplos de código, repositórios abertos

Esta é talvez a forma mais simples de testar competências, desde que seus candidatos tenham um portfólio e você tenha especialistas em sua equipe de seleção que possam avaliar o portfólio.

Como implementar

Estudamos currículos de candidatos. Se encontrarmos links para o portfólio, nós os estudamos. Caso não haja indicação de portfólio no currículo, solicitamos portfólio ao candidato.

Em que casos utilizo esse método?

Na minha prática, esse método raramente era usado. Não é sempre que o portfólio de um candidato contém trabalhos sobre o tema desejado. Candidatos experientes geralmente preferem esse método em vez de uma tarefa de teste típica e desinteressante. Eles dizem: “olhe meu rap, há dezenas de exemplos de minhas soluções para vários problemas, você verá como escrevo código”.

Vantagens

O tempo dos candidatos é economizado. Se os profissionais da sua equipe tiverem tempo, é possível eliminar de forma rápida e sem comunicação com os candidatos os inadequados. Enquanto o recrutador procura candidatos, seu colega avalia o portfólio. O resultado é um trabalho bastante rápido e paralelo.

Contras:

Este método não pode ser usado para todas as profissões de TI. Para avaliar um portfólio, você mesmo precisa ter habilidades desenvolvidas. Se você não for especialista, não poderá avaliar qualitativamente o portfólio.

Colegas, convido vocês a discutir o que leram nos comentários. Diga-nos, que outros métodos de teste rápido de competências você usa?

Fonte: habr.com

Adicionar um comentário