By: Geoff Wright, Assistant Practice Manager– El Segundo, CA
Coding tests: Most effective strategies for companies in today’s market
Dear hiring managers: Do you want to land the best candidates in the city? Of course you do. As a recruiter, part of our job is to present you with the best talent, but that’s only half the battle. In order for it to be a successful placement, the candidate has to make it through the hiring process and accept an offer before getting nabbed by another company. A coding exam is often an integral part of a company’s hiring process. There are multiple ways to go about this, some better than others. Below I will highlight the most effective ways for companies to facilitate the coding exercise in order to land your dream candidate.
At what point should the company administer the test?
The best time to hand a coding exam to a candidate is after the first interview. Please don’t force a candidate to take a coding test prior to ever speaking with them. Imagine this from the candidate’s perspective: Top caliber engineers in Los Angeles right now can easily land 3-4 interviews in a week’s span. Unless you’re a powerhouse such as Google or Microsoft, why would they want to take the time to complete a lengthy coding test before they even have interest in your company? Companies risk losing out on candidates who may not even begin the process, to focus on opportunities that are more inviting. Once the candidate has interest in your company they will be more agreeable to going through the testing process.
If you insist on testing candidates prior to speaking with them, make sure it’s a short assignment. In this instance, there’s nothing wrong with administering a quick 15 minute coding assignment to weed out the lesser candidates. From a candidate’s perspective, that is a reasonable request of the company, but anything over the 30 minute mark may leave some doubt in the candidate’s mind as to whether or not they want to proceed with your company. As a result, your process may cause you to lose the perfect candidate.
Pass/fail rate of test
On one hand you don’t want to create a test that’s so easy that every candidate who takes it is able to pass. On the other hand, you don’t want to make it so difficult you miss out on candidates that could have been a great fit. The percentage of candidates that pass your assessment is important and there should be a happy medium when filtering out candidates. If it’s slanted too far in either direction this will defeat the purpose of your coding exam.
If you notice your test(s) aren’t working, be flexible, make changes. Don’t be so stubborn as to not change your process if you know it isn’t working. Another thing to consider is; can your own team members pass the coding assignment? What level engineer on your team is able to complete the test? If you’re looking for a junior developer and the senior level developers on your team can’t pass the test, that’s clearly not going to be an effective exam. If you want to figure out the value of a candidate to your team, compare their test scores to those of people already on your team.
Different types of tests
There are plenty of different ways to tech out a candidate, but ultimately your main goal should be to find the candidate that’s best suited to your environment. Just like everything, there are going to be pros and cons to each testing methodology, however, through my years as a technical recruiter, and the continuous feedback I’ve received from both candidates and managers, I’ve come to realize that certain approaches are more effective than others.
The best approach is putting the candidate in a situation where you as a hiring manager can truly see how they’re going to perform in your specific environment. Instead of giving the candidate a take-home quiz that’s designed to trick them, make it a realistic experience for the candidate. The most effective coding exercise is doing a real life assignment or mini project with the most senior person on the team. This will accomplish multiple things. It will enable the lead to see how the candidate codes, obviously, but more importantly will give the lead some insight as to how they will interact with each other. Whatever the project you present to the candidate, make sure it matches what they’ll be doing on a day to day basis. For example, if you’re hiring somebody for an architecture and design role, make sure your exam consists of planning, documentation, design, and architecture concepts. If you’re looking to bring on a junior candidate, give them some simple maintenance work or bug fix problems.
Another effective on-site coding strategy is presenting a candidate with a problem you’re currently experiencing as a company. Let the candidate come up with solutions and see if they have good ideas and ways to impact your company.
Probably the most common approach is to give a candidate a take-home coding quiz after their first round interview. This proves 2 things to the manager. It shows hiring managers the candidate’s technical chops, but also their willingness to take the test shows interest in the company. If a candidate completes the test in a day or less you know the candidate wants the job. Just make sure the take home test doesn’t exceed 3 hours because it’s going to be difficult for employed candidates to take 3 hours out of their schedule to finish the test for you. Thus slowing down the process and enabling other companies to come out with an offer before you.
In the end, coding tests are important for a company to evaluate the talent coming through the door. Certain candidates have difficulty verbally explaining certain coding concepts, but once they’re given a coding test they knock it out of the park. These are the people you want on your team; the people that can actually code.
In general, certain things you need to avoid are; administering a long coding test prior to a first interview, any take home tests that last more than 3 hours, giving a test that every candidates fails (or passes), and all day coding exams or projects where the good, employed candidates won’t have the time to complete it.
Lastly, as a hiring manager, listen to your recruiter (if you’re using one). They’re the eyes and ears of the current market. Sure, back in 2009, companies could get away with administering long coding tests, but that’s just not the market we’re in right now. The market remains very much in candidate hands.