Screening out the bad candidates with a coding challenge!

A while back, I published an article on nujob about an experience I had failing a coding challenge and eventually turning that fail into a pass.

The article resonated with a few people and even got retweeted by Uncle Bob.

It troubles me that that there has been a recent trend of companies using coding challenges blindly as a first stage screening – mainly because of the wealth of coding challenge systems that have appeared online such as HackerRank, Codility, and Geektastic.

Of all the ones I’ve tried. Geektastic is the one I liked the most as although it is an online system – it actually tries to get out of your way and let you write code in your own way in you own dev environment. Furthermore the code isn’t automatically marked, there is no right or wrong – This is a huge step in the right direction.

The other ones I have tried, like Codility, seem to want you to write code in the browser window – which is very very cool, but soon becomes a burden (no intellisense, unclear compiler errors, inability to write your own tests, missing librarys, 3rd party libraries impossible – the list goes on). They do say you can copy paste out to your own IDE and copy paste back – but seriously…. why make me do that?  And then after all that, you get a score based on some tests they run in the background – the recruiter or client sees this score and tries to use it to compare candidates… yuck.

Anyhow, since I’m passionate about this topic and since I liked Geektastic, I got in touch with Rick, the CEO, and went for coffee. We chatted about all things coding challenge and it was a breath of fresh air.

Rick asked me to write a guest post for Geektastic and I jumped at the chance.

The topic for me was obvious… How to create a coding challenge that screens out the bad candidates without alienating the good ones.

I shared my ideas with his audience and it was my chance to get into the nitty gritty on this topic.

One of the biggest pain points I have is having to do a test in the first place. Like my peers, I have wealth of experience and a happy client base from the last 15 years to match – if you make me do a coding challenge, you better make it easy for me!

This is something that I find it often a problem, good candidates don’t want to do your stupid test. I think the ultimate screen-out test is finding something that a good candidate can do in 10 minutes, but a bad candidate can’t complete or takes the full amount of time.

Heaven forbid it should also be a challenge that they actually enjoy!!  I can tell you now… if you make me parse a phone bill or do Fizz Buzz (again!!!), I’m not gonna enjoy it – I’ll probably still do it,  after all I’m a bit of a geek about them.

Anyway, it is quite a deep topic, and I get into many of the details in the article. Big props to Zeno for helping me out too.


I love feedback, if you enjoy the article, please take a minute to write a comment on the article on geektastic. I’m really keen to hear what you think and your views on the topic. I promise to respond – thanks in advance.