Building out an experienced and reliable software team is often described as…impossible. Good developers are in high demand, and finding them is no easy task – first, you’ve got to somehow attract potential hires. Then you’ve got to narrow down the list based on resumes, which can feel like quite the feat.
And there’s a lot banking on your choices. Moving forward with the wrong person, or group of people, can put you months behind on your business products and solutions. It can even harm your organization altogether.
So how do you navigate this process of hiring software developers successfully? We’re sharing our five-step process to help clients source great candidates and then vet them to build a successful development team.
1. Define Your Needs
Before you start your search for your next team member, you’ve got to first outline the role you wish to fill. How much experience would you like the ideal candidate to have? Are there specific skills you’d like this person to have?
Realistic Expectations
Let’s get this out of the way early on – finding the perfect candidate for your team is a pipe dream. You’re not likely to find the perfect fit. Web development is a wide range, and one, finding qualified prospects in this industry is difficult enough, but two, it’s unlikely that any prospect you find will check all the boxes you need. You may need to sacrifice a few wants, maybe even a few needs.
And that’s not a bad thing! You want a diverse team made up of different levels of experience, background, and skills that complement one another, not mirror one another. More importantly, strict requirements for language and framework experiences often excludes great candidates who can quickly pick up those skills.
Experience and Skill Level
For example, hiring a junior developer is very different from hiring a veteran developer. In a less experienced candidate, our team finds that their attitude is more important than skill level. Are they eager to learn and willing to go outside of their comfort zone to do so? Do they have a good foundation in programming and development, even if most of their experience is within a nonpreferred language or framework? These characteristics can make an unrefined prospect stick out.
On the other hand, a developer with years of experience can either deliver compelling leadership and skill or contrarily, more headaches than expected. Veterans in the industry sometimes are unwilling to change how they do things and are stuck in their ways. They may not have a willingness to adjust to your processes, tools, and frameworks. Therefore, the ability to adapt is crucial when joining a new team. If you can find someone willing to acclimate to the workflows and details you need them to, they can often lead your growing team to wonderful work and solutions.
2. Testing
We ask many developers to complete various tests in the frameworks and languages they claim to have experience in and suggest you do the same. The last thing you want is to realize one week into the job that the candidate cannot code in PHP, even though they claimed to have years of experience. Don’t just trust the resume.
Put them in front of a computer and a recent bug your team fixed, something small and straightforward. Carefully observe how they address the issue, how they act with the development environment, and how they make the change. Ask them to explain their process as they move through their process. How do they get to the root of the problem? How quickly do they pick up foreign code? Jumping into another’s code isn’t ever easy, but it’s a very real situation that developers in teams face often.
But just as important is their overarching problem-solving skills. Present them with a recent conceptual challenge your development team faced and ask how they would approach solving it. How they tackle these issues speaks volumes about how they’d work for you. And you may uncover an angle you hadn’t even thought of!
3. Culture Fit
Even the smartest software engineer in the world will fail in a company in which he or she just doesn’t mesh with the rest of the team. Ensuring personalities don’t clash is a huge hurdle in the hiring process within this industry. Write up a list of 10-15 personality traits describe your team members and look for developers who have them.
And don’t forget to trust your gut when it comes to company culture! If someone checks all the boxes, but you still have a strong feeling he or she won’t work well with the team you’re building, move onto the next candidate. At the very least, ask him or her to attend a team happy hour to see how they gel with other team members.
Important note: building a team of different personality types and people from various backgrounds is crucial to a successful team of any kind. You don’t want 10 carbon copies of the same person. A strong development culture is made up of individuals who work well together. To speak plainly, use fair and non-discriminatory hiring practices.
4. Red Flags
In every interview situation, you’ve got to trust your instincts and keep an eye out for red flags. For example, if long pauses follow many of your questions, you can bet that the candidate is looking up answers on their end. This is crucial during initial phone interviews when you don’t have nonverbal communication cues to fall back on.
In in-person interviews, how they interact with you and your team, their potential colleagues, is just as important. Do they make eye contact, speak confidently, and ask good questions? Do they struggle to explain things in their own words, without notes to reference?
You may also want to define your own unique red flags. Our team often asks about style choices. For example, we wince at the use of a text editor for development. A junior developer using one may just not know what they’re missing out on and need a bit of training. A veteran developer using a text editor signals a candidate stuck in their ways and unwilling to consider new tools.
5. Reference Checks
Almost all companies ask for reference checks, but many hate to go through the motion of contacting these references. This is a crucial step in the process, so don’t skip it. Ask for references who can speak to the candidate’s professional conduct and experience.
Then ask this contact difficult questions about how the candidate handles challenges and failure. Inquire about their experience in the languages and frameworks they share on their resume. Ask how they work well with other team members – and not just other developers but project managers and analysts.
Need Help Building Out Your Software Development Team?
Here at Soliant Consulting, we do much more than supply exceptional development services; we support our clients internal development efforts by helping them build out their own teams. We estimate it costs $80,000 to source, vet, and hire a new software developer on your own, even more if you work with a recruiting company. We can help your team significantly reduce this cost by screening candidates for you. We can even take these services further by mentoring and training your new team members on tools, processes, and best practices. If you’d like support in doing so for your business, please contact our team to learn how we can help.
Thanks for this article, but I’m confused about the text editor reference. What would you use for “development” if not a text editor? I assume you’re talking about PHP, JavaScript, HTML, CSS, etc.
Hi Jason, for development we recommend using a full featured Integrated Development Environment (IDE). Personally, I prefer JetBrains suite of products and use PHPStorm for development on a day-to-day basis!
Speaking to red-flags: “For example, if long pauses follow many of your questions, you can bet that the candidate is looking up answers on their end.” Are you addressing telecom interviews specifically, regarding the candidate literally looking up answers online, or are you speaking in the figurative?
If in the figurative, are you suggesting this is a red-flag in and of itself? Pausing while delivering an answer can demonstrate mental organization, linguistic clarity, and thorough comprehension.
I was speaking specifically to phone interviews with that red-flag, sorry for the confusion!