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.

Want a simple website or a blog? Use WordPress

You may notice that this site is made using WordPress.

There is a very good reason for this.

WordPress makes sites like this one, which are essentially a blog and a few other pages, very easy.

WordPress has come a long way since it came out and it is so simple to get up and running, publish new content and even to restyle with a new theme.

WordPress is a content management system (CMS). This means you can publish content (articles and pages) on your website with little or no knowledge of coding or html.  People familiar with facebook pages would find wordpress just as easy, except the content is on your own website, not on page on facebook.

I am an application developer, I build complex web applications. I could write something like WordPress, but that’s kind of the point, why write something that already does the job more than well!

Many people come to me and ask them if I can build them a website. Of course the answer is yes, but in the long run, it’s better if I show you how to setup wordpress or even setup wordpress for you.

When it comes to writing an application, like facebook, twitter, instagram or things like that, then wordpress is not going to cut it for you. But if you want an informational site, a sales site or a content publishing site (blog) then WordPress will be perfect for you.

It’s also interesting to note that around 20% of sites on the whole internet are sitting on top of wordpress.

So if you want a website, and you don’t know how to code, think wordpress. is not the worst place to start your journey.

WordPress itself is free software, is a hosting platform that is free for the basic version, but has a few small costs when you want things like your own domain.

I recomend going down the route of having you own hosting account with someone like Tsohost and then choosing the 1 click install for wordpress and then manage it yourself.

However some will want a more custom and managed service, but still with the power and flexibility of wordpress and of course I can help via my managed website service – Online Street

What is an Autoresponder?


No, it’s not an out-of-office auto reply, but you’re close!

An autoresponder is a magic marketing tool. It automatically sends a pre-determined sequence of emails at specified intervals irrespective of when the recipient joins the mailing list.

That’s right, no matter what date you join the list, the order and frequency of the exact emails you receive, is the same as someone else joining the list at a completely different time to you. Eg 3 days after joining you might get a promotion and the same goes for sometone joining a year later, 3 days after joining, she will receive the same email as you did.

Sounds robotic doesn’t it…

Autoresponders are as old as the hills. They have existed well before the invention of email. Just think of those competition scratchcards.

“By entering, you are giving us permission to contact you with news, offers and promotions, please tick if you do not want to receive anything from us “.

You enter the competition, and you start to receive things through the post:

  • 1 day later – a thank you for entering letter
  • 2 day later – their catalogue
  • 5 days later – a 10% discount voucher for their catalogue
  • 15 days later – a once in a lifetime 20% voucher expiring in 3 days

The above 4 letters are part of the company’s autoresponder sequence.

Different people enter the competition on different dates, yet all receive those letters at the specified interval after entering the competition. It was likely a manual process behind the scenes but some companies would have automated this.

You might also receive:

  • The monthly newsletter
  • The new catalogue each time it comes out

These 2 things aren’t part of the autoresponder, they are sent to everyone on the mailing list at the same time.

An autoresponder is all about the sequence and timing of sending information to people after an event takes place. This allows process refinement to streamline the marketing into a sequence that actually works.

Going digital

Automation is far easier in the email world (anyone can do it, including you), and there are many tools to help you achieve it – even free tools.

Autoresponders allow you to setup the emails well in advance of someone subscribing. They are easy to refine and change the sequence or improve particular emails, because by definition, a new subscriber hasn’t seen the sequence of emails yet.

For example, if you are launching a book, you can tell people you are launching a book and offer to let them know when it’s launched (in exchange for their email address)

A sequence of emails could be:

  • Day 1 – Inform about one topic from the book
  • Day 2 – More details about the content of the book
  • Day 3 – Offer a discount on pre-ordering the book
  • Day 4 – Tell them the offer ends tonight
  • Launch day – Tell them about the launch of the book.

The most important (and powerful) thing about Autoresponder sequences is that for any new person subscribing, their experience will be the same!

So once you get a sequence working and getting your audience doing what you wanted (eg visit a particular page), it will likely continue to work.

A new subscriber’s Day 1 email is the same as somebody who subscribed a month ago (or your improved version of).

Eg *Arnold* subscribes on January 1st, *Barbara* subscribes on February 14th.

This shows when they will receive the Day 1-4 emails above.

Arnold subscribes on Jan 1st and receives:

  • Day 1 email Jan 1st
  • Day 2 email Jan 2nd
  • Day 3 email Jan 3rd
  • Day 4 email Jan 4th

Barbara subscribes on February 14th and receives:

  • Day 1 email Feb 14th
  • Day 2 email Feb 15th
  • Day 3 email Feb 16th
  • Day 4 email Feb 17th

Barbara gets the same set of emails at the same intervals as Arnold. The only difference is the start date; the date of subscribing.

Advantages of setting up an autoresponder

  • It is a chance to warm up the relationship with a new subscriber in a controlled way
  • All new subscribers get the same experience no matter when they subscribe
  • You can improve the emails (and sequence) based on feedback or analytics
  • Track analytics like email opens and link clicking
  • It allows you to keep up with any scale, if you get a 1000 new subscribers, you are already ready for it.

The most important advantage though is learning. You might get a lot of unsubscribes when email 3 goes out. This is great feedback. You can work to improve or maybe remove email 3.

Disadvatanges of an autoresponder

  • If it is too robotic, people will notice and they will unsubscribe.
  • It is easy to let content go out of date, emails could go out that aren’t relavent anymore, eg you aren’t launching a book anymore
  • It feels a bit faceless when you are writing them as you aren’t actually writing to someone

Example Autoresponder Tools

Important tips

  • Sign up to the list yourself and see what it feels like getting this sequence of emails.
  • The best marketing goes unnoticed, keep that in mind with your marketing. Not trickery, just provide real value, give things for free.
  • People will unsubscribe, this is ok, there is no one size fits all content.

Things to avoid

  • Relying solely on your autoresponder, you should also aim to interact personally, ask for replies, reply personally to all replies.
  • Trying to sell before eliciting need or providing value

The power of the automated funnel (and Brennan Dunn Case Study)

The reason this is so powerful is because human behaviour is largely the same. If you get a great sequence of emails, a percentage of customers seeing this will love your product. Of those people, if the next email makes a percentage of them buy your product you have an automated sale from start to finish. All you have to do is work on strategies to get people onto your list, not strategies to make people buy (you’ve automated that).

Brennan Dunn describes one of his sequences where it leads to 5% of subscribers buying a wordpress plugin. So if he gets 100 people on the list and 5% buy it, and the plugin costs $25 dollars, the he’ll receive $125. If he can get 100 subscribers on his sequence by paying less than $125, it is like printing money.

He used google adwords, and figured out a way to spend $100 to get 100 new subscribers. 5% buy his $25 plugin. That’s $125. So he paid $100 to make $125.

To continue this success, all he has to do is place the adword advert and money, assume it works to get another 100 subscribers and money will start to trickle in, $25 profit at a time. This might not sound like a lot of money, but it is 100% automated. It is a beautiful thing for an e-marketer, it’s like printing money.

Final Tips

The best emails you receive come from friends, they were written just to you. No flashy HTML, no confusing jargon, no sales tactics. They got straight to the point and probably didn’t even sign the email at the bottom. If you are writing an automated email for the first time, try actually writing it to a friend using your normal email client, then once you’re happy, copy it into the auto responser tool.

Want to quickly test an idea? Use Unbounce

Unbounce is a lead pages tool. A lead page is something that tells a customer about a product (new or existing) and asks for their email address in exchange for something of value to them (eg early access, a discount, a free guide to something).

You can write these pages yourself manually, but typically you won’t strike gold first time so you need a way to rapidly create and change pages and even test out different variations of the same page too see which one captures more leads (sometimes called A/B testing).

There are a few tools that make it easy. I have tried Kick Off Labs and Leadpages but my favourite is Unbounce.

Here’s something I put together in minutes with Unbounce.

Best Practices Book

Want to know where people are clicking? Use Crazy Egg

Crazy Egg

Crazy Egg is quite a funky little tool to see what people are doing on your site. It works best on the your main landing pages (the pages people get to via a search engine usually). It does work behind a login box, but only shows good data if the pages look very similar for different people’s accounts. This is because it can’t actually see what they see, only where their mouse is, you record the images from your own logged in account and it overlays a “heatmap” over that picture. It’s most useful on landing pages because you want to see if people scroll around, read to the bottom, click that large orange button or even click on something non clickable. If you have a high traffic site, you should get useful insights that make it worth it’s pricetag (currently $108 per year for the basic plan). See it here

Got something to sell online? Use Shopify ?

Shopping Cart

All too often, people invest their time and decent sums of money investing in an “e-commerce” platform – essentially an online shop.

If you are reading this, you may have decided you need to sell your products online. is a good choice – it lets you set up all your products with all their relevant options and pricing and handles all the difficult stuff like the basket, checkouts, and integration with payment providers like PayPal.  It isn’t free, but you can get up and running fast without an upfront investment.

It has a 14 day trial and plans start at £20 per month, which is a very cheap way to get going and get selling.

In time, you’ll probably want to graduate onto something more custom – at that point, get in touch and I’ll happily build and run it for you – more details at Online Street