Tech assessment is an essential part of developer hiring. Take-home challenges seem a convenient option to assess tech skills because they are asynchronous and remove candidate's stress.
However, overlooking some fundamental aspects might lead to never completed tests, lots of time wasted on both sides, and bias when assessing candidates' results.
In this post, we'll cover the basic rules for ensuring that your take-home tests achieve their primary goal, i.e., identifying if someone has the necessary tech skills required for the job.
The main challenge with take-home tests is that people have to do them outside working hours. So you have to deal with the following constraints:
I have some bad news for you: unfortunately, there is no silver bullet to ensure that all your candidates will complete your take-home test and that you'll have enough time to select the best ones.
However, if you follow the ground rules below, it'll significantly increase your chances of getting the most out of your take-home coding tests.
First, define the main assessment objective and make your exercise revolve around it. The following questions should help you:
Second, create a clear task description. Here's an example of the structure I stick to that has been working well so far:
Here is an example of how it could look:
Third, provide auto-tests that the candidate can run locally to help them ensure they built what you wanted them to.
Once your candidate volumes have grown, you can also use the auto-test results to vet your candidates with no developer effort on your side.
Stick to the process developers use every day:
Because we're all humans, it's easy to slide into the bias-land when code reviewing someone's work.
To ensure no bias creeps in, create a code review scorecard that includes the following:
Likely your take-home challenges will have some sharp edges in the beginning. What's worse is that not all your candidates will be vocal about it.
To ensure that your take-home challenges are up to standard, use this 2-step rule:
Developer hiring is hard. But it doesn't have to be terrible. Following the take-home interview principles above will already put you well beyond most of the hiring processes out there.
Is there a good principle not described in this post? Don't hesitate to share it below in the comments.
Also published on DevSkills.