No momento, estamos contratando um desenvolvedor júnior para me ajudar, pois tenho mais projetos do que posso gerenciar atualmente. Nunca contratei alguém que não fosse amigo ou pelo menos conhecido. Tenho uma entrevista por telefone com o único candidato que realmente se destacou para mim (no papel), mas nunca fiz isso antes.
Nossos projetos são aplicativos da Web com alta escalabilidade e uso intensivo de dados que processam milhões de transações por hora, em vários servidores e clientes. Para ser específico do idioma / pilha, usamos ASP.Net MVC2, WebForms e C # 4, MSSQL 2008 R2, todos executados no Windows Server 2008 R2
O que devo perguntar a ele? Como devo estruturar a ligação?
interview
hiring
junior-programmer
Jeremy Boyd
fonte
fonte
Respostas:
Pergunte sobre quais blogs de tecnologia eles lêem, pergunte o que o candidato acha interessante na tecnologia atual e por quê.
Essencialmente, para uma entrevista por telefone, você deseja descobrir se é alguém que está entusiasmado com tecnologia e programação e está interessado em aprender e saber mais.
Como este é um júnior, você não pode esperar que eles conheçam muitos tópicos avançados, mas deseja ter certeza de que eles podem pensar como um programador - ofereça a eles um problema simples e peça que eles o orientem sobre como eles o resolveriam. Isso lhe dará uma visão de como eles pensam e resolvem problemas.
fonte
Adotei uma abordagem aberta para entrevistas por telefone, mas para colocar alguma estrutura, geralmente peço à pessoa que fale através do currículo que enviou. Freqüentemente, a maneira como eles passam pelo currículo levará a outras perguntas e você entenderá melhor como elas são.
A outra coisa a se pensar durante a entrevista por telefone é perguntar: eu poderia trabalhar com essa pessoa? Eles são energéticos? Irritante? Preciso?
fonte
Código com eles.
Você definitivamente deveria fazer as coisas usuais da entrevista. Mas eu não contrato ninguém sem fazer uma sessão de programação em pares com eles.
Minha abordagem: levarei de 2 a 3 horas e um problema de brinquedo (por exemplo, "Vamos criar o Twitter v 0.1" para um desenvolvedor de pilha cheia ou "Vamos implementar a lista de primitivos" para uma pessoa de back-end). Vamos nos sentar no mesmo computador e discutiremos como resolvê-lo. Vou escrever o primeiro teste de unidade e dizer: "faça passar". Talvez eu escreva os próximos testes para ajudá-los a seguir em frente. E então eu geralmente os deixo correr, pulando apenas ocasionalmente. Quando ficarmos com pouco tempo, vou pará-los e perguntar para onde eles levariam a seguir e o que eles gostariam de fazer antes de colocá-lo ao vivo.
Coisas que procuro:
fonte
static
palavra-chave na Wikipedia ou mostrar como posso usá-la em um contexto viável e aplicável?What's your Stack Overflow account name?
Uma das melhores maneiras de conhecer como o código de alguém será exibido é vendo-o em primeira mão. Uma das melhores maneiras de fazer isso é via SO.
Caso contrário, perguntas padrão se aplicam. Pergunte sobre situações difíceis e como elas as superaram. Pergunte sobre quais novos idiomas eles estão aprendendo ou pensando sobre o aprendizado e por quê. Pergunte a eles qual IDE eles usam e por que eles escolheram? Qual controle de origem?
Você pode aprender muito fazendo perguntas abertas que podem não estar relacionadas a um projeto específico, mas permitirá que elas trabalhem com você seu processo de pensamento.
fonte
Uma coisa que eu não vi aqui na minha leitura rápida é a necessidade de perguntar a eles sobre:
1 - Disposição para aprender
2 - Capacidade de auto-ensinar versus treinamento formal
3 - Exemplo de algo que eles aprenderam no passado
4 - Um exemplo de áreas com as quais não se sentem confortáveis
5 - Pergunta geral de alto nível como "se você está encarregado de criar um aplicativo da Web sobre ... quais tarefas precisam ocorrer e quem deve executá-las" - Isso deve lhe dar uma idéia sobre o conhecimento atual deles sobre o processo de desenvolvimento - É não precisa ser preciso, mas pelo menos você conhecerá a visão deles como é hoje.
fonte
Fale-me sobre um projeto em que você trabalhou no passado
Esta é uma ótima pergunta para entrevistas na minha opinião, telefone ou não. Se eles puderem falar de maneira inteligente sobre um projeto em que trabalharam, é provável que "entendam". Você está contratando um desenvolvedor de nível júnior, por isso não é importante que eles sejam especialistas ainda, mas eles devem pelo menos entender bem seu campo o suficiente para falar sobre isso. Normalmente, as pessoas que você deseja contratar não terão problemas em lidar com isso, enquanto as pessoas de quem você deseja ficar longe responderão em algumas frases ou menos.
O que você faz para se manter atualizado?
Em um setor que muda constantemente, acho importante que eles se mantenham atualizados. Esta não é a pergunta mais importante que faço em uma entrevista, mas se eles não conseguem encontrar nada a dizer, não é um grande sinal.
Diga-me como você escreveria uma aula de bicicleta
Talvez seja uma pergunta melhor para uma entrevista pessoal, para que eles possam escrever algum pseudo-código, mas acho que também poderia funcionar para uma entrevista por telefone ... Descreva uma bicicleta (ela possui guidão, rodas, etc. Alguém o monta. ) e peça que descrevam como modelariam as classes. Nada de inovador aqui, mas se eles se debatem com essa questão, provavelmente ainda são muito jovens para ser um trunfo.
fonte
Já existem muitas dicas de entrevistas boas, mas acho que você não pode preencher essa posição até saber exatamente o que elas farão no dia a dia. Se seu primeiro pensamento foi: "O que eu precisar que eles façam". simplesmente pare. Encontre um pedaço específico de código para eles revisarem. Escolha o melhor e o pior código para eles olharem e verem se sabem a diferença. Dê a eles áreas para trabalhar em um primeiro projeto rápido que pode ter sido negligenciado.
Espero que você tenha contratado o melhor programador, mas todos têm áreas em que são melhores / mais experientes do que outros. Aproveite-o e defina seu papel de acordo.
Ah, e contrate alguém com um histórico de fazer as coisas.
fonte
Quando você está em uma discussão individual com o desenvolvedor, pode conhecê-lo e verificar se eles são honestos com você.
Para fazer isso, você pode fazer a seguinte pergunta para saber como ele é realmente honesto
Se eles fizeram alguma certificação, como uma Certificação Microsoft, verifique com eles se eles realmente estudaram e limpe-a.
Alguns desenvolvedores juniores que fizeram seus projetos finais do ano não teriam feito o projeto sozinhos, ou seja, seus amigos devem ter feito isso por eles, etc.
Ser honesto desempenha um papel muito importante, quando o desenvolvedor júnior é encarregado de projetos confidenciais.
Se você acredita que pode confiar neles, pode dar um questionário sobre quais tecnologias estão sendo recrutadas, seguido de um texto prático com algum cenário para verificar se eles têm a capacidade lógica, ou seja, para verificar se eles têm contato constante na programação.
fonte
O CEO da Sandglaz Nada Aldahleh escreveu recentemente um post sobre isso, com base em sua própria experiência em contratar desenvolvedores para sua startup. Aqui estão algumas das coisas que ela procura:
E, claro, o teste de programação, que não deve consistir da pergunta do Fizz Buzz. Uma tarefa da vida real que pode ser concluída dentro de algumas horas em seu escritório seria o melhor tipo de teste.
Você pode ler mais conselhos dela aqui: http://blog.sandglaz.com/how-to-interview-and-hire-junior-developers/
fonte