Checklists have been proven to be incredibly useful to professionals dealing with risky and complex situations like pilots and doctors. Because a consistently great candidate experience is essential to successfully recruiting the best devs, we have created a checklist you can use to help you provide a great experience every time.
If it is your job to hire software developers, my hat goes off to you. Finding one is like finding the perfect life partner. You have to go through a difficult, expensive process to find out if the two of you are right for each other. If it works out, you are rewarded with lifelong love and companionship. If it doesn’t, you could be left spending a lot of time and money on something that doesn’t go anywhere.
And it is no different with developers. The right one will do amazing work for you but the wrong one can cost you a lot without anything to show for it. It is no wonder then why a ton of resources and effort are put into sourcing and evaluation. Oddly though the same could not be said for candidate experience.
Candidate experience matters when hiring developers
Think about all of the little things that bring two people together. Initially, you might find each other through friends or a dating app but that isn’t what makes you like a person. That comes from taking them on exciting dates, making soup for them when you’re sick, and introducing them to your friends and family. In other words, the experiences you share are what bring you together.
It is no different when you are hiring a software developer. They may come to your through a referral or a recruiter and if both of you are the right fit for each other, you can then negotiate to bring them on board. However, a dev’s experience during the hiring process can make or break the process and have far-reaching consequences beyond that one hire.
When a company invests in a great candidate experience, the numbers speak for themselves:
- The quality of their hires can improve by up to 70%!
- They will be more than twice as likely to improve their Cost per Hire
- Candidates who weren’t hired will be twice as likely to apply again
- 57% will still refer your company to others
When making expensive and critical hires like software devs, a good candidate experience can save a ton of money in sourcing while attracting much better devs as a result. But when a company gets is wrong, it can blow up in their face:
- 60% of candidates have had a poor candidate experience with 72% of those sharing it online
- 42% of candidates won’t reapply for jobs with companies who treated them poorly during the interview process
- 22% will tell others not to work there
You won’t just lose a potentially great dev who you have invested a lot to get, your company’s reputation will suffer, hurting your chances of getting more good devs in the future.
Why reputation is important
First, you have to consider the specifics of the market for software developers. A 2017 Stack Overflow survey found that while 13% of developers were actively looking for a new job, 62% said they were open to new job opportunities. In other words with the right pitch, you could be able to attract almost five times as many devs as are actively looking for work. Considering that the best devs are in high demand and probably already have jobs, accessing this labor pool is critical to hiring success. But how can you access these people?
Reputation has a lot to do with it. A Corporate Responsibility Magazine / Allegis Group Services study found that 84% of people in the same salary range of a software developer would consider leaving their current jobs if they were offered another role at a company with an excellent corporate reputation. At the same time, 69% wouldn’t take a job with a company with a bad reputation, even if they were unemployed.
Take a second to think about that. As many people base their career changes on a company’s reputation as brush their teeth twice a day!
You wouldn’t shack up with a loser, just to be in a relationship so why would a developer want to join a company which had a bad reputation, just to have a job? And it isn’t just the top of your recruiting funnel which is hurt. 55% of job seekers have left an application after reading a negative review of an employer.
And how could you expect to maintain a great reputation in the developer community if the internet is full of people saying your candidate experience sucks? Of course, no company starts a hiring process trying to give a bad experience but all too often they fall into it. While only 12% of companies have searched and never found a negative review, a full 20% have never even checked to see if a negative review exists.
You don’t want any of these to be out there:
But there is some hope. While 60% of employers have read at least one piece of online negative feedback about their application process, 99% believe that enhancing their candidate experience could help them protect their employer brand. So if you’re reading this post, you know that enhancing the experience dev’s have during their hiring process will improve your reputation and help you down the line.
Of course, having the idea is just the first step. To improve your hiring experience, you need to break down the process and find out how you can improve each part of the process.
Discovery and research
A dev’s candidate experience starts before you even have the chance to schedule a meeting with them. Whether they are referred to you by a recruiter, one of your employees, or simply browsing a job site, a developer will want to know more about your company. Who reading this has actually gone into a date completely blind? The more information you give, the easier it will for them to see themselves working for you.
A job ad paints a picture
A job ad shouldn’t ramble (the ideal length is 700 to 1100 words, more or less to a 19% drop in applications) but should include all of the necessary information about the job. Essential details include:
- Salary and compensation details
- Benefits packages
- Specific job tasks
- Ideal candidate profile
- Typical working hours and onsite locations
- Key objectives for what the role is expected to accomplish in the first year
- Education and training options
Check out this fantastic example from Nested.
At the beginning, it contains the location and a thorough job description, including the specific tasks the dev will be doing on a day to day basis:
It then describes the ideal candidate they have in mind:
It ends with a complete list of all the cool benefits of the job, the options for personal development, perks, and the salary range the dev can expect.
When done right, a good job ad is more than just a description, it allows the dev to imagine what their life would be like, in and out of work if they took the job. To do this, they will need to know their compensation to be able to price out their lifestyle. And this means that you will have to bite the bullet and give salary information.
It goes without saying that developer salaries are eye-wateringly high and any advantage an employer can get in salary negotiations could potentially save thousands of dollars. But by hoarding salary information, you could lose a lot of potential applicants. 59% of developers want to know about compensation details when first hearing about a job opportunity. After all, most of them already have jobs and aren’t willing to invest in a vague process with a company who developed a reputation for hoarding information.
Even if your reputation isn’t harmed too much, you certainly won’t be able to attract as many candidates as you would like, as omitting salary information leads to a 33% decrease in applications.
Don’t neglect your careers page
If a job ad is a detailed eHarmony profile, the careers page is like the Facebook page of a potential match, a window into the larger world that the person inhabits. It is not enough to imagine what kinds of products a dev might work on or what kind of mortgage they will be able to afford with the money they will be offered. A dev also needs to imagine the kind of environment they will be working in. After all, when you commit to a person, you will be spending a lot of time with their friends and family, so it is important to find out if that will be a joy or a drag.
64.5% of applicants find career sites to be important sources of information so you would expect that companies would make sure they filled them with information about working at the company. Unfortunately, too many companies have a simple page with some contact details and a mission statement will suffice contributing to the fact that only 45% of candidates think employers career pages effectively communicate what it’s like to work for the company.
This means that over half of the employers out there are missing out since candidates are 41% less likely to apply to employers who don’t showcase their culture. No company wants to shrink their applicant pool by over a third because they didn’t maintain a webpage.
To really draw potential applicants in, your careers page should:
- Clearly state your company’s values and history
- Humanize your brand with photos, videos, and bios of existing employees
- Be optimized for mobile
A good example is Airbnb’s careers page. This is actually not the main careers page but a subpage just designed to attract engineers. It includes information about the company including their approach to building products; contributions to the tech community through blogging, open source, and talks; employee testimonials; and plenty of pictures and videos of people working for Airbnb. It looks like a great place to be a dev, doesn’t it?
If you want to read more about Airbnb’s approach you can check out our post on candidate-centric hiring.
You want a dev to think that when they get up from their desk to get a coffee, they will be in an interesting space surrounded by an interesting group of people who share their values. They should know exactly what they kinds of people who work for you are like and whether the dev could see themselves as one of those people.
After all, a company is sort of like a family and if you are going to join the family, you want to know whether you will get along with your in-laws.
Applications can be the worst
But they don’t have to be. Think of it like setting up an online dating profile. You understand that the information is important but it can get so tedious, especially if the form is too long. If you have set up profiles with a number of matchmaking services you’ll know what this is like as you’ve probably answered the same question about ten times.
Both the job ad and the careers page offer something to your dev, namely a potential lifestyle that they can picture themselves in. The application is purely for you, the employer, so keep it efficient.
A good application should be clear and short. It should only ask essential information that is necessary to screen candidates at this step in the process and not ask for extraneous information that can be collected at another time.
After all, most of the labor pool you will be drawing from already have jobs. They aren’t going to invest a lot of time in filling out a long form. In fact, only 33.4% of candidates spend more than 30 min filling out the average online application and 60% have quit filling out an application because of its length.
And these numbers include all industries including ones where labor outstrips demand. There is much more demand for tech positions than there are devs to fill them, with only one position filled for every three advertised in the US. Do you think software developers, highly in demand and often already employed, will bother filling out an application that is as long as Santa’s naughty and nice list?
And if you think that the worst case scenario of a long list is that it might bore some candidates, think again. Some chief causes of bad applications can be unclear instructions and repetitive questions. These don’t only make for some boring reading, they can hurt your reputation. One poll found that 93% of respondents thought that unclear application instructions had a negative impact on their opinion of a company and another study found that 90% of their respondents thought repetitive questions and long forms make a negative candidate experience.
So it is super important to review your application. Make it clear exactly what you want your applicant to do and only ask for information once. Instead of having people say your company is a mess, have them think that your company is a place for winners, not time wasters.
Take this one for Asana. While there is a bit of writing, the candidate really only has to enter information in a few fields, taking a few minutes max:
Notification is sexy
So you’ve gone on your first date and then.. nothing. Do you call them the next day to say you had fun? Do you wait three days? Should you even bother if they don’t want to contact you? Everybody asks these questions when they are dating and nobody likes them. It feels so much better to know exactly whether the other person wants to see them again.
Your dev wants the same thing and yet the statistics about communication are laughable:
- 50% of candidates never hear back after submitting an application, even acknowledging that it was received
- Failing to receive a personal response within 24 hours makes applicants 28% less likely to remain active candidates
- 65% of candidates say they either never or rarely receive notice of the decision made on their application from an employer
- Of those that do receive notification, 51% say it takes 1 month or more
- When they don’t hear back from employers, 85% of job seekers doubt that a human being has even reviewed their application
- Application received
- Application rejected
- Interview scheduled
- Post interview/technical interview
Better yet, lay out all your cards on that table. 83% of candidates said it would greatly improve their experience if employers provided a clear timeline for the interview process. If you have planned the interview process correctly, you should have no problem telling candidates what to expect. This will help them understand the process and your decision.
All communications should be delivered in a timely manner and some of them like application received can be automated. This is an easy way to leave the dev with a good impression of your company. In fact, candidates think timely follow-ups on application status to be more important than a well-designed career site.
And this is just as true for candidates who are rejected, presumably the majority of the people going through the process. After all, these devs might be a good fit for a position down the road but you could ruin that relationship since candidates who are not informed about the status of their application are 3.5 times less likely to re-apply to the company that passed on them.
When communicating with candidates in your pipeline, there is no such time as too much. Be clear about every step of the process and communicate punctually and honestly to all of your candidates.
Here is an example of an invitation for an interview. It is informative without including unnecessary information and tells the dev everything they need to know.
Interviews worth showing up to
Who here hasn’t been a bit apprehensive about meeting your partner’s parents for dinner for the first time? Even if it ends up going really well, there is always the dread that you will sit there being coldly judged for three courses and a digestif.
The interview stage is no different with 17% of developers saying that the interview process is one of the most annoying parts of the job. Even if you like a candidate, 65% will lose interest in the job if they have had a bad experience. And the difficult thing is that it is up to you to make the candidate feel less like this:
And more like this:
Of course, it doesn’t have to go badly. As with every step of the process, being transparent and keeping your candidate informed will work in your favor and in theirs. In fact, 35% of developers said they want to be better prepared for interviews and yet 40% of applicants receive nothing beyond a time, date, and location. It’s simple enough so why not help them?
You will still need to objectively assess your candidates but give them all of the information they will need to put their best foot forward. The best way to do this is to send them a guide before the interview containing information like:
- List of interviewers with job titles
- Potential assignments
- Day in the life testimonials from other staff
- Sample career paths
It is usually necessary for dev candidates to go through multiple rounds of technical interviews to see whether they have the right skillset for the job. While these are a necessary evil, it is important to on the one hand be efficient and on the other hand, reinforce the fact that you are a serious company which understands the technology they are testing for.
A great way to do this is with an automatic first day of work test, with a task using the code they will be working on if they get the job. These can be sent out to a long list of candidates as a way to whittle down the group you invite for an interview. Candidates will appreciate it because it will give them a taste of the kind of work they will do if they are hired. Additionally, it will save the expensive time of technical interviewers since you can easily eliminate anybody who doesn’t meet the desired threshold for technical skill before inviting any candidates in for an interview
How to avoid an interview fail
Once you are in the interview, it is important to make the process about getting to know the candidate and their suitability for the job. In his book How to Recruit and Hire Great Software Engineers: Building a Crack Development Team, Patrick McCuller describes what not to do in the interview if you want to ensure a good candidate experience. He recounts an interview process that involved:
- Last minute rescheduling
- Interviewers who were late
- An over-reliance on brainteasers which had nothing to do with the job or his aptitude and only served to make the interviewer feel smart
- An interviewer who asked him questions for a job different than the one that had thought he was interviewing for
- No communication from the recruiter
This experience proved that the company he was interviewing at didn’t know what it was doing and led him to warn his network against working there. On the contrary, when you take the hiring process seriously by testing devs on the kinds of tasks they will actually be working on, they will be left with a better impression of your company.
Interviews full of brainteasers aside, it is important to use an assessment that actually has something to do with the job that they are being hired for. One of the biggest holes you can fall into in this respect is the whiteboard interview. A mainstay for a lot of companies, a lot of candidates hate them as they don’t feel it accurately assess their abilities. Comments like this one:
Zdroj: Sara Mei via freeCodeCamp
and this one:
Zdroj: Max Howell via freeCodeCamp
are commonplace. Not only do bad methods like whiteboard interviews give you incomplete information, they will give candidates the impression that your company doesn’t know what they are talking about. Instead, use code-pairing interviews or first day at work tests as these both give a better assessment of the dev’s abilities and gives them confidence in your expertise as a company.
Some other things that you can do are to be punctual, communicative, and spend more time listening than talking. Another positive step you can take is to introduce the dev to the team they would be working with, a practice 47% of developers want during interviews. After all, you should have nothing to hide and that includes your team.
Always ask for feedback
After meeting somebody for a first date, don’t you wish you could ask how you did? Were you right to try and be funny or should you have been more romantic? The best way we have of having a better experience the next time is to learn what we did and didn’t do right this time.
While we often aren’t given an opportunity in our personal lives to find out how we did, there’s no reason why we can’t give it feedback in our professional lives. After all, we can be a bit less emotional and a bit more professional.
Despite the wealth of information we can get from our candidates, only 1 in 4 employers regularly request feedback from candidates about their experiences. Not only does this hinder your ability to improve candidate experience but it perpetuates a culture that devalues feedback. This means that three-quarters of the candidates out there never received any feedback on the hiring process, partially because 75% don’t know the appropriate person to ask for feedback from.
By sharing feedback, both parties get better at the hiring process and are left with a positive impression of the other. As a part of your interview or post-interview process inform the candidate of who they can receive feedback from.
A simple way to judge candidate experience is to ask “On a scale of zero to ten, how likely is it you would recommend this company as a potential employer”? The number you get will be your eNPS broken down into Promoters (9-10), Passives (7-8) and Detractors (0-6). The more promoters you get, the better your process is and the more benefits you can reap from providing a good candidate experience.
When hiring developers, you are trying to find the person with the best fit and the right skills. Given the amount of effort you need to put into sourcing and testing, it is often easy to overlook candidate experience, but you do this at your apparel. To make it easy, we have created a handy candidate experience checklist. Use it to make sure you are doing everything you need to do to ensure a great candidate experience every time a Dev enters your candidate pipeline.
By providing a better candidate experience, you will be able to attract the right people you need to help your business grow.
Candidate experience checklist