Olá Habr! Há alguns meses, meus colegas
conversaram sobre a expansão da equipe 5 vezes: de 50 para 250 desenvolvedores até o final de 2020. Como você deve ter adivinhado, agora estamos prestando muita atenção à contratação. Ao mesmo tempo, não estamos prontos para "absorver a quantidade", contratar todos seguidos, dizendo "então vamos descobrir". É importante para nós que as pessoas realmente se tornem parte de nossa equipe nos próximos anos. Foi esse motivo que uma vez nos levou a um novo formato de entrevistas - um dia de teste. Sobre ele e será discutido sob o corte.

Desmancha prazeres com números.Por 1,5 anos, contratamos mais de 40 pessoas e apenas quatro desenvolvedores nos deixaram: um foi iniciar seus negócios e o restante foi para a Europa.
Introdução
Para que eu e o candidato possamos nos conhecer bem, há um longo processo de contratação:
- Entrevista de RH
- entrevista técnica
- entrevista com o CTO.
Este último, a propósito, é muito importante:
Sasha é um mestre nas conversas de coração para coração, sabe como trazer até os geeks mais severos e reservados para uma conversa franca.
Além de tudo isso, passamos um dia de teste com os candidatos. Parece, por que outro dia? O que queremos saber sobre o candidato e o que queremos mostrar a ele? E quem vai concordar com isso ?!
Dia de teste no Dodo
O início dos dias de teste não foi uma decisão fácil. A equipe de RH não ficou satisfeita com o prolongamento ainda maior do pipeline de contratação: “Bons especialistas não nos procuram tanto, eles já têm várias ofertas em mãos!” Eles disseram. No entanto, houve outra opinião. Um dia de teste é uma oportunidade única para um funcionário em potencial aprender sobre as condições reais da empresa sem conseguir um emprego lá. Por exemplo:
- Aprenda sobre condições reais de trabalho . Que empregos, móveis, computadores. Existem janelas nas salas em que os funcionários de TI estão sentados (afinal, eles costumam colocá-las em salas sem janelas: “de qualquer forma, eles olham para os monitores o dia todo”).
- Descubra quem terá que trabalhar . O líder da entrevista Timlid é ótimo, mas você precisa trabalhar em equipe. E ver em quem consiste antes de aceitar a oferta definitivamente não é supérfluo. Imagine que você trabalhará em conjunto com um dos desenvolvedores e terá a oportunidade de espionar os outros pares e ver se pode trabalhar lado a lado com essas pessoas.
"Lado a lado" literalmente. Praticamos ativamente a programação em pares. Trabalhar em pares é muito mais eficiente, especialmente para desenvolvedores que vieram recentemente para nós. E o dia do teste oferece uma oportunidade única de realizar pessoalmente um "test drive" do trabalho em pares. - Descubra o que você realmente tem que fazer . Todas essas listas de tecnologias de ponta, indicadas nas vagas, são ótimas, para nós são mais longas que as tranças Rapunzel. Mas isso raramente está relacionado às tarefas atuais para as quais você será executado. Seria bom dar uma olhada no backlog, no código do produto e
pedir para entender o que você deve fazer e se deseja fazer isso sozinho. - Aprenda sobre as ferramentas que você precisa usar . Aprenda na prática sobre regras de codificação e como elas são seguidas. Por exemplo, é habitual trabalharmos no Rider, e não no Visual Studio. Pode ser tão incomum que se tornará crítico ao decidir se deve vir até nós. Nuanças semelhantes existem em quase todos os lugares (em regra, devido a razões históricas) e é melhor aprender sobre elas antes de assinar um contrato de trabalho.
- Descubra como é um dia de trabalho real em uma equipe . Em qualquer equipe decente, você terá pelo menos stand-ups diários. É importante ver como eles vão para entender como os membros da equipe se comunicam, qual é a atmosfera. No Dodo, vamos um pouco mais longe e convidamos o candidato para as atividades públicas em geral do dia atual: devForum, planejamento ou revisão. Algo acontece todos os dias, por isso há uma oportunidade de analisar mais detalhadamente a interação de colegas em potencial.
Para um candidato, um dia de teste é, antes de tudo, uma oportunidade de tomar uma decisão informada se ele está pronto para trabalhar nesta empresa. Zero besteira publicitária, apenas fatos reais.
Se eu tivesse essas oportunidades em todos os lugares que acabei conseguindo, definitivamente não iria a algumas delas. E seria muito menos cinza agora.
Obviamente, o dia do teste também é a oportunidade para a empresa olhar para o candidato nos negócios:
- Queremos reconhecer com segurança "mestres em entrevistas" . A melhor maneira de fazer isso é olhar para a pessoa no processo de trabalho real. Com que rapidez ele começa a navegar no novo código? A leitura do código é, de acordo com algumas estimativas, até 70% do tempo do desenvolvedor. Ao mesmo tempo, examinamos quais soluções ele oferece para a tarefa, como ele escreve o código e se ele segue os padrões aceitos.
- Queremos entender como uma pessoa é ativa, capaz de agir como o iniciador de uma solução . Obviamente, é difícil começar a oferecer imediatamente soluções para um código desconhecido. Mas em grandes sistemas como o Dodo IS , você encontrará código desconhecido após um ano de trabalho. Se uma pessoa no final do teste se sentar com a expressão “vamos lá, me mostre como fazê-lo” - este é um mau sinal.
- Queremos saber como as pessoas “confortáveis” estão no trabalho . Isso é especialmente importante ao parear: um colega em potencial “arrancará o teclado” de um parceiro? Será que ele conseguirá convencê-lo com calma da exatidão de suas decisões ou explicar seus erros? O trabalho em pares é uma interação muito estreita de intelectos e um novo funcionário não deve ser "tóxico" nessa interação.
Com base no exposto, o "dia do teste" não pode ser inferior a 5 horas. Também tentamos levar um candidato para o almoço, o que lhe dá a oportunidade de examinar possíveis colegas na comunicação informal. E vamos dar uma olhada no candidato fora do escritório.
Ao mesmo tempo, não faz sentido estender essa prática a todas as vagas seguidas. Por exemplo, não passamos dias de teste para juniores: desenvolvedores iniciantes exigem esforços sérios da equipe para mergulhar no código e ao trabalhar em tarefas. Um dia não será capaz de mostrar seu potencial.
Criamos um formato de dia de teste como uma alternativa à tarefa de teste. Eu acho que é óbvio para muitos que a tarefa de teste concluída (especialmente para o desenvolvedor) deixa mais perguntas do que respostas. Ao mesmo tempo, muitos candidatos excelentes são simplesmente pontuados nele.
Resultados
De fato, em 1,5 anos, contratamos mais de 40 pessoas e apenas quatro desenvolvedores nos deixaram: um foi iniciar seu próprio negócio e o restante mudou-se para a Europa.
Perguntas populares sobre o dia do teste
O fato de um dia de teste é surpreendente entre os candidatos. Tendo se recuperado do choque, eles fazem basicamente as mesmas perguntas. Vou respondê-los na forma de uma blitz. Eu acho que também será interessante para você, meu leitor:
- Um dia de teste é pago? Não.
- E se eu estiver em outra cidade? Se a vaga envolver trabalho no escritório, você precisará comparecer a ele em um dia de teste. O que é lógico. Caso contrário, você não poderá descobrir nada da lista acima.
- Devo ir jantar? Não. Você pode trazer o seu próprio - é ainda melhor se você planeja sempre ter o seu. Você pode descobrir se a nossa cozinha é adequada para os seus jantares.
- O que levar com você? No inverno, você deve fazer uma mudança - será mais conveniente. Nada mais.
Quer experimentar um dia de teste? Venha e gaste!