14 coisas a procurar quando se quer contratar um programador

Publicado: Última actualização:

Então você quer contratar um programador. Não sabe o que deve procurar no novo membro da sua equipa ou talvez esteja farto de recrutar programadores que lhe falham vezes sem conta? O problema é que você pode procurar por habilidades que realmente não importam. Como evitar isso? O que faz um bom programador além das habilidades técnicas?

Aqui estão 14 coisas que você deve levar em consideração na sua próxima entrevista:

1. Curiosidade

Walt Disney disse uma vez: "Continuamos avançando, abrindo novas portas e fazendo coisas novas porque somos curiosos e a curiosidade continua nos levando por novos caminhos" e estas palavras poderiam ser o lema de grandes programadores. Eles nunca aceitam as coisas como elas são e se esforçam para encontrar as melhores soluções e novas maneiras de resolver os problemas. Um programador sem esta mentalidade não avança. Os seus candidatos estão curiosos? Eles fazem perguntas?

2. Atenção aos detalhes

A curiosidade vai com a atenção aos detalhes. Como sabe, os detalhes importam. Prestar atenção aos detalhes se traduz diretamente no desempenho de um programador. No seu artigo 10 características a procurar quando você está contratando um programadorJustin James escreveu: "E, claro, uma grave falta de atenção aos detalhes às vezes também pode ser óbvia; o candidato que entra com as calças desabotoadas ou papel higiênico preso a um sapato claramente não está prestando atenção aos detalhes"!

3. Capacidade de raciocínio claro

A programação está ligada à lógica, por isso as habilidades de pensamento forte e claro de um programador são de importância fundamental. Você pode verificar isso realizando um teste de perguntas lógicas ou pode deixar espaços em branco no que você está dizendo para ver se o candidato vai descobrir do que você está falando.

4. Capacidade de planeamento

Os bons programadores têm a capacidade de planejar suas ações após analisar uma nova tarefa. Pedir aos candidatos para explicar a sua abordagem a uma nova tarefa é uma forma de verificar essa capacidade.

5. Respeito pelos prazos

Alguns programadores se encolhem ao mencionar a palavra 'prazo'. Ser pontual deve ser uma prioridade para os seus programadores. Será que eles cumprem os seus prazos?

Peça ao seu candidato para descrever uma situação quando ele se deparou com um prazo.

6. Velocidade de leitura e capacidade de compreensão de topo

O código de digitação é, na verdade, apenas uma fração do trabalho de um programador. Eles passam a grande maioria do seu tempo lendo, então leitores lentos não serão muito eficientes. Pode ficar pior se o seu programador interpretar mal ou não entender o que diz uma especificação. Você não quer perder tempo com a sua empresa, pois não?

7. Habilidades de aprendizagem

Se você tem que escolher apenas uma habilidade que os grandes programadores têm, é definitivamente a habilidade de aprendizagem. Em seu artigo O que os Empregadores de Competências Querem em um Desenvolvedor de Software: Minhas Conversas com Empresas Que Contratam Programadores, Matt Weisfeld menciona as palavras que ouviu quando jovem programador à procura de emprego: "Não contratamos pessoas pelo que sabem, mas pelo que podem aprender". Estas palavras sempre ressoaram comigo. A partir daí, minha estratégia de carreira como programador sempre foi olhar para frente, em vez de simplesmente focar em uma tecnologia específica e atual. Como alguém me disse mais recentemente, "Como programador você não tem uma única carreira de 30 anos, você tem 30 carreiras de um ano". ’

A programação está em constante mudança, por isso uma pessoa que não quer aprender vai ficar a perder. Para você é importante se o seu novo programador vai ser melhor no trabalho que você está oferecendo e o quão rápido ele ou ela pode aprender coisas novas.

Programadores perfeitos seguem sempre as últimas tendências, eles procuram novas soluções e oportunidades de aprendizagem. Eles são mestres em auto-aprendizagem. Estes programadores são relativamente fáceis de encontrar - pergunte aos seus candidatos como eles aprenderam uma habilidade específica. Eles lêem/ seguem algum site, revistas, livros relacionados com a programação? O que eles fazem para estarem atualizados? As suas respostas irão mostrar-lhe a sua vontade de aprender.

A aprendizagem não se refere apenas à programação - bons programadores têm de ser aprendizes rápidos também fora da programação, por exemplo, para compreender o ambiente onde o seu software será implementado. Pergunte-lhes se eles dominam alguma habilidade (cozinhar? cantar? desenhar? andar de skate?). Se sim, é mais provável que eles dominem outra coisa.

E o diploma deles? Isso importa? No seu artigo É por isso que você nunca acaba contratando bons desenvolvedoresLaurie Voss escreve: "Engenheiros escrevem código e software de navio; acadêmicos provam teorias e escrevem provas de conceito. Alguém inteligente pode ser capaz de fazer as duas coisas, mas não é de forma alguma um dado, ou mesmo muito fortemente correlacionado".

8. Julgar o próprio conhecimento

Não há pessoa que saiba tudo, por isso a capacidade de julgar com precisão o próprio conhecimento é uma mais-valia. Os seus candidatos estão a tentar esconder as suas lacunas de conhecimento? Eles podem tentar fazê-lo também em outras situações... O "Eu sei que não sei nada" de Sócrates pode não ser suficiente, então você também deve procurar por um forte desejo de descobrir as coisas.

9. Paixão e prazer

Sem paixão, não há motivação para procurar novas soluções. A paixão pode ajudar a superar casos difíceis. Pergunte-se se os candidatos estão animados quando você fala? Eles parecem gostar de programação? Como é que eles soam quando falam sobre o seu trabalho anterior? Pergunte a opinião deles - se eles têm uma opinião forte e podem falar muito sobre alguma coisa - eles são apaixonados por ela. Trabalhar sem paixão e prazer fará com que o seu novo pessoal fique constantemente insatisfeito.

10. Adaptabilidade

Num ambiente de mudança como a programação, não ser capaz de se adaptar ou lidar com mudanças é um grande "não" para um bom programador. Um candidato que reclama sobre mudanças de requisitos não será um bom jogador de equipe.

11. Capacidade de lidar com falhas

Não há programadores que não tenham falhado em algum momento, então a capacidade de lidar com o fracasso lhe dirá muito sobre o seu candidato. Pergunte-lhes sobre o seu fracasso e como eles eventualmente resolveram o problema. Os seus candidatos afirmam que não fracassam? Você encontrou ou um gênio ou uma pessoa com um ego realmente enorme. O que você acha?

12. Capacidade de comunicação

Se você precisa de um programador como membro de sua equipe, dê uma olhada em suas habilidades de comunicação. Programadores que não querem ou não conseguem se comunicar com outros membros da equipe não têm um desempenho eficaz a longo prazo. Verifique se os seus candidatos podem transmitir as suas ideias com precisão e eficácia. Você pode aplicar o método de pitching frequentemente utilizado no mundo das start-ups. Seus candidatos podem se vender em uma breve apresentação sobre suas habilidades ou área de especialização? Eles explicam as coisas de uma forma que os leigos entendam? Isso lhe dirá muito mais sobre um candidato do que uma entrevista regular.

13. Mentalidade de trabalho em equipe

Se os candidatos falarem mal dos seus antigos gestores e das suas experiências de trabalho anteriores, é provável que pensem demasiado bem de si próprios. Eles podem ignorar as ordens, fazer as suas próprias coisas e reclamar sobre a estupidez das ordens (ou sobre "esta pessoa ignorante que obviamente não entende de programação"). Mesmo que discordem de alguém, os bons programadores são capazes de compreender as razões de uma decisão em particular.

Vale a pena considerar o Sem política de imbecilNão há nível de brilho e produtividade que possa compensar o envenenamento do moral da sua equipa e, uma vez quebrada uma cultura de equipa, é muito difícil de corrigir. Contratar estas pessoas, mesmo para que você passe por uma crise, não vale o que custa. E se você contratar uma por engano, despeça-as rapidamente, e sem hesitação'.

Faça a si próprio uma pergunta muito fácil: a sua equipa gostaria de trabalhar com uma pessoa assim? VOCÊ quer trabalhar com uma pessoa assim? (não significa ser amigo).

14. Preguiça

Sim, preguiça. No artigo intitulado 15 Características de um bom programadorJohn Rampton escreve sobre três boas qualidades de um bom programador enumerado por Larry Wall, ou seja, preguiça, impaciência e arrogância.

Uma pessoa preguiçosa pode encontrar soluções perfeitas para poupar tempo. Mas também pode ter alguns inconvenientes, por isso talvez seja melhor não confiar na preguiça como a característica dominante.

Tenha em mente que contratar um programador errado é mais caro e perde mais tempo do que esperar por um bom programador.

Partilhar correio

Saiba mais sobre a contratação de tecnologia

Subscreva o nosso Centro de Aprendizagem para obter informações úteis directamente na sua caixa de entrada.

Verificar e desenvolver as habilidades de codificação sem problemas.

Veja os produtos DevSkiller em ação.

Certificações de segurança e conformidade. Certificamo-nos de que os seus dados estão seguros e protegidos.

Logotipo DevSkiller Logotipo TalentBoost Logotipo TalentScore