With tech unemployment approaching <2% in many regions, landing top talent in software development has become more challenging than ever. Having specialized in this space as a recruiter for a number of years now, I’ve seen the changing dynamics of the market. Demand is outstripping supply and emerging tech in big data, AI, blockchain and cloud development continues to expand the scope of skills required by organizations across the globe. There is a new market reality at play – software engineers have more suitors and multiple options readily available, should they decide to make a move in their careers.
Hiring software development talent is a tough ask at the best of times, involving the assessment of hard technical skills, problem-solving ability and the oh so subjective “will they fit with the team” criteria. Competition for that talent is now steeper than ever before. From an organizational perspective, it’s clear that having the right talent in place is essential. If your dev team can’t execute on your product roadmap, growth will stall and other functions in the business will be held back. In fact, during a 2018 poll of executive leaders in tech, 60% of respondents suggested that access to, or scarcity of, software development talent was the biggest challenge facing them in their business. It’s clear that companies need to step up their game in order to acquire top software engineering talent.
So how do you increase your odds?
At Venor, we’re tasked with tackling this problem on a daily basis and have worked with everyone from early-stage startups through to prominent global brands. What have we learned?
Well, there’s no silver bullet but there ARE universal best practices that we’ve used to get a leg up on the competition and find great talent. Here’s what you need to know:
Have you heard of Google’s famous whiteboard test? It’s the hiring practice that Google swore by for years, that has inspired countless startups, scale-ups, and large enterprises to have developers complete a code or pseudocode challenge on a whiteboard during an in-person interview. I’ve seen similar tests, quiz or puzzle type questions, and other eccentric evaluation methods used on a fairly regular basis.
“Estimate how many gas stations there are in Nova Scotia.”
“How many golf balls would fit inside Fredericton’s City Hall?”
One of the world’s largest tech companies decided to look critically at recruitment practices. Google evaluated at their hiring data and, as it turns out, the fact that a candidate could complete these tests had little to no bearing on whether or not they would be a great employee. Guess who no longer issues whiteboard quizzes or puzzle-style questions during their interview process? Google.
I’m all for outside-the-box thinking and validating fit through appropriate candidate assessment, but it’s so essential that each stage in your process provides a valuable outcome vs being “process for process’ sake”.
Here are some key considerations:
- Does your process actually assess the right skills?
- How many passive job seekers do you turn off along the way? If you are soliciting a developer’s interest, why would they do a 3-hour code challenge for you?
This is not to be misconstrued. Well-structured coding tests can certainly be useful for assessing specific programming skills; but developing a product is a combination of ability in programming, engineering, architecture, and teamwork. Coding is an essential skill, but it’s important to look at your process and check the numbers. Can you justify the purpose of each stage in your hiring process? Are you capturing the potential opportunity cost?
“We’re in a war for talent, and missing out on the best person because of a draconian process or arbitrary testing can be a tough pill to swallow.”
Another key to remember is that companies need to sell their opportunity to top-end software developers. Ensuring that candidates are bought in and excited about the opportunity will increase your odds of them staying engaged in the hiring process and their willingness to jump through process-related “hoops”. This likely includes taking the time early on in your process to personally connect with candidates and outline the vision and upside of the opportunity and why they could be a good fit for the role. The level of selling required at this stage depends on a number of factors:
1. The candidate (are they an applicant or did you seek them out?)
2. The company (what’s your employer brand/reputation? Are you a fortune 500 leader or an early-stage startup?)
3. The job (is this a step up in career, title, responsibility and/or compensation?)
There’s some significant legwork required here to “court” candidates, but when someone is sold on the opportunity, testing such as realistic programming tasks or pair programming that measure job-related skills will be better received by candidates – which is key. When candidates are given a sample test of work, similar to that which they would do in the job, it ranks highly in terms of predicting success at 29% effectiveness (vs. the 14% of an unstructured interview), as per John Hunter and Frank Schmidt’s comprehensive review of validity in selection methods.
TLDR; testing helps IF it’s rolled out the right way, otherwise it can hurt your cause.
Speeding Up Selection
While we’re talking process, additional consideration needs to be paid to the speed and efficiency of your recruitment efforts. “Time kills all deals” is a sales cliche that is appropriate and accurately applied in recruitment. If a truly great developer becomes available, all of the strategies and decisions should be aligned towards completing the process in the shortest time possible.
You can still be thorough and have a multistage selection process, but taking two or three months to make an offer will lower your success rate dramatically. I have seen this countless times:
A top software developer interviews with company XYZ. The company’s VP of Engineering likes the candidate and the candidate likes the company. Terms seem to be in alignment. Company XYZ determines it wants to speak to a few other candidates to be sure of their decision. Two weeks pass allowing them to meet other talent, and company XYZ circles back to their original candidate with a strong offer. The problem is, the original candidate has already accepted another offer with a competing company. This is the market reality for hiring developers – it’s fast-moving and extremely competitive.
With the current unemployment rate, some companies will even implement a one-interview process and get an offer out that day. While the one-interview process carries a measure of risk (i.e. making the wrong hire), companies can win top talent simply by moving their process forward faster than their competitors. If a candidate is considering competing job opportunities, the first hiring team to extend an employment offer has a distinct advantage.
Of course, companies have a delicate balance to strike between meticulously screening job seekers and hiring good people as quickly as possible. If slower hiring processes result in better hires, those delays can be good for the business long term. If not, they can be wasteful and there is the risk of losing top candidates to other, faster-moving organizations.
The key takeaway is clear. If you ensure each stage of the hiring process is purposeful and move things along at a faster cadence than your competition, then your success in hiring will ramp up accordingly.
Read on for the follow-up post on How to Hire Software Development Talent in a Boom Economy – Part Two: Identifying and Engaging Top Tier Developers.
Nick Misener is a Senior Consultant with Venor, a relationship-centric search firm and talent partner. He specializes in recruiting top talent for Information Technology companies throughout Atlantic Canada and beyond. Connect with him on LinkedIn or Twitter!