Every once in a while people ask us how we hire and interview software developers at Plataformatec. In this post, we share the key things we do when looking for and interviewing job candidates. We focused the post on actionable hints, from the basic tips up to some specific characteristics to the hiring process at Plataformatec. This is what has been working for us and we hope it is useful for you too.
Part One – define your Candidate Profile
Having a well defined candidate profile can save a lot of your time and is fairly simple to put together. A Candidate Profile makes easy for a non-technical person (an HR colleague for example) to help you find and identify potential candidates. These are some examples of what could be in your profile description:
- common “job titles” (specially if you are using LinkedIn Search to find candidates. ex.: software engineer, software craftsman, ruby developer, and so on)
- the most common skills
- their degrees and/or the universities the candidates went to
- their graduation year (if you’re looking for recent grads)
- companies they have worked for in the past
- also, it helps a lot to describe the things you are NOT looking for
But be careful not to make this list too long, it is supposed to be something simple to use. Our experience says that 4 to 5 characteristics are enough. If you want, you can download a Candidate Profile template at the end of this post.
Part Two – preparing your interview questions
The interview is a great opportunity for you to detect evidences (strong signals) that a candidate would be a great match with your team and that he/she is able to do the job… but you’ve got only 60min to do it. Wow, that’s hard! Where to start?
We’d suggest that you follow these steps:
1) Think about your company Culture and Values
- identify which behaviours…
- …reinforce your company culture
- …are definitely against your company culture
2) Think about the challenges of being in the role/job
- make a list of the key skills that the candidate must have to perform it’s activities
- describe a typical day of a person in this position
- think about the most difficult tasks this position requires
3) Focus on ‘how the candidate solves a problem’ rather than ‘the right answer’
- So, when building technical questions:
- avoid technical questions that are “right or wrong” type
- prefer questions where the candidate has to compare X and Y and present you good arguments (the pros and cons), ex.:
- “When would you recommend using X and when you would use Y?”
- we usually ask the candidates to criticize something that they really like, e.g.:
- “Tell me three things you don’t like about Ruby on Rails.”
4) Test your questions
- once you have finished writing your questions, ask them to yourself, to your colleagues or friends. Take notes about the type of answers you’re getting.
- remember, your job during the interview is to look for EVIDENCES, so if the answers you are getting are not providing you any evidences, then you need to refactor your questions.
Part Three – the interview
All right, you are about to finally meet with the candidate face to face. And if you’re using Skype or Google Hangouts please turn on your camera and ask the candidate to do the same. For the interview here are a few notes and reminders:
- Ice-breaking is important, and so is being nice. There’s high probability that the candidates will be nervous when the interview starts. So, the first step is to make them feel comfortable. This is good for them and for you too. If they feel comfortable, they will be able to be more authentic, show their real personalities. So, it is your job to turn the interview into a pleasant conversation. If the candidate is stressed during the whole interview you probably won’t be able to find any of your evidences.
- Pair-Interviewing. At Plataformatec, we like to interview candidates in pairs because we believe that two people can detect evidences better than just one. Usually one of us conduces most of the interview while the other pays close attention and takes notes. But try to avoid more than two interviewers as it could increase the stress level for the candidate and that wouldn’t help at all.
- The candidate should interview you too. Remember to spare a reasonable amount of time (preferably after you have asked your questions) to present your company to the candidate and to answer her/his questions. It is a respectful gesture. They have saved a few hours preparing and answering your questions and the least you can do is to return the gesture. And don’t forget that they are choosing where they want to work with you too. At Plataformatec, we feel that we had a good interview if the candidates leaves our office with more admiration and appraisal to our company’s culture, even if they are not moving on to the next steps of the hiring process.
- Look for for Cultural Fit evidences. As an interviewer, your job is to detect if there is a fit between the candidates and your company. Sometimes we hear from others interviewers comments like “We scared the sh#@ out of the candidate!”. That is a very corrosive attitude. Besides making candidates uncomfortable and being disrespectful, it is unlikely they will suggest your company to their colleagues.
Well, that’s it. I would love to hear your experiences in this topic and I wish you good luck in finding great teammates for your company!
Em 2009, quando fundamos a Plataformatec, havia muita incerteza e desafios pela frente. Por outro lado havia pontos claros para nós fundadores, principalmente quando o assunto eram as contratações do nosso time. Era unânime que não contrataríamos “recursos” e sim pessoas com as quais nós teríamos prazer e confiança em trabalhar juntos. Afinal de contas, o nosso modelo de negócios sempre foi lastreado na construção da nossa marca através da qualidade dos serviços que prestamos. Sendo assim, faz total sentido investir nossos esforços na retenção e desenvolvimento do nosso time.
Quatro anos depois aqui estamos, com um considerável histórico de projetos bem sucedidos e algo que consideramos muito valioso: o nosso Time. Quem conhece um pouco sobre empresas de “Outsourcing de TI” sabe que o turnover é altíssimo, mais que o triplo da média de outros setores. Honestamente, é uma lógica que nunca entendemos. Aqui na Plataformatec, não tivemos nenhum desligamento em 2012 e em nossos quatro anos de existência, somente um dos nossos engenheiros optou em sair da Plataformatec (aliás, ele é um grande amigo nosso e sempre que está no Brasil aparece para comer uma pizza conosco). Já houve pessoas que nos perguntaram qual é a mágica. A resposta é óbvia: não tem mágica. Nós somente convidamos pessoas a juntarem-se ao nosso time quando sentimos que há um grande fit cultural.
Portanto se você acredita em colaboração, tem alta capacidade de aprendizado e tem vontade de trabalhar com um time com histórico de sucesso comprovado, continue lendo. Você pode ser o próximo integrante do nosso time.
Como participar do processo seletivo
Para participar do processo seletivo visite http://plataformatec.com.br/careers ou também veja http://www.facebook.com/plataformatec.com.br para conhecer mais sobre o nosso time.
Estamos à procura de:
- Desenvolvedores de Software (Ruby e Rails)
- Front-end Developers
- Scrum Masters / Gerente de Projetos
- Business Analysts (extração de requisitos)
Requisitos para candidatar-se (todas as vagas)
Para qualquer uma das vagas:
- Inglês Intermediário
- Local de trabalho: São Paulo, bairro Vila Madalena
- Pelo menos um ano de experiência na sua área
Requisitos complementares para candidatos a Desenvolvedores de Software
- Background em programação orientada a objetos
- Pelo menos um ano de experiência com desenvolvimento de aplicativos web em qualquer linguagem
- Pelo menos seis meses de experiência com Ruby e Rails
- OS Linux ou Mac
Mesmo que você não tenha todos os requisitos acima, mas realmente quer trabalhar conosco e ama programação, você está convidado a participar do nosso processo seletivo.
Estamos esperando por você!
[curiosidade] No blog post de dois anos atrás ainda dava para enxergar o sofá nas fotos.