How and why we use coding challenges to interview developers

Coding Challenge

Does the thing actually work when they say it works? (Yes, people have sent us things that dont work.)

Work smarter, better, and faster with weekly tips and how-tos.

Or do they hammer through a bunch of approaches and see what sticks?

Growing the next generation of coders and computational thinkers

Note: This piece was originally published in 2016. Weve learned a lot about our process on hiring since then and made some interesting improvements. Stay tuned for a upcoming piece on what weve learned and changed since.

For a couple reasons, building a support team is pretty hard. Its hard because there are no shortcuts to finding and training the right person….

Like I said earlier, this is all definitely a big work in progress. Hopefully we keep getting better at testing and learning from candidates.

What do they do when they get a little stuck?

Weve been through several iterations of coding challenges to get where we are now. Its definitely still a work in progress. But this is whats working for us right now.

This post was originally published on the Statuspage blog in 2016.

If someone is going to get weeded out of the hiring process, best to weed them out early. It seems to be better for everyone involved.

Are they going to be done as soon as its running, or are they going to clean up any inefficiencies once its working?

Are they using technologies theyre competent working in? Or are they using some odd or shiny things in order to impress us?

Fostering a culture of innovation isnt about providing ping-pong and free beer. Its about your values and how you live them. Heres a look at…

What we like about this problem is theres no hidden answer, or leap of inspiration here. We wanted a problem that someone can brute force their way through if need be. You dont need to know some obscure algorithm or something to get the answer to click.

Basically, we want to see how well they can build and deploy a thing for the web.

We dont just learn if they can solve the problem or not. We get a lot of interesting insights into how the candidate works.

Can they brute force their way through this?

If someones banging their head on the desk and cant get through it, there probably isnt a relationship in store for us. Most reasonable coders weve given this to have gotten through in about 20 minutes.

Inside Atlassian: building a culture of innovation

Basically, we need to see if the candidate can write any code at all. Youd be surprised how many candidates fall short when its time to put the cursor to the editor.

Unlike the first one, this is one is more a practical application test. Its throwing them into the kind of situations theyll face on the job.

Work smarter, better, and faster with weekly tips and how-tos.Subscribe nowThis means time is precious. We cant waste any on interviewing or hiring the wrong people. Thats why every engineering candidate we talk to goes through a set of coding challenges.

Do they pay attention to the requirements?

We also give them free reign to use whatever services or code libraries theyd like.

There arent really right or wrong answers to a lot of this. Its just really helpful and interesting to us to see how candidates work.

For people with any sort of decent programming chops, it will take a little effort but shouldnt be super challenging. Consider it a price of admission test. The work on this test has no practical application beyond showing us if you can write any code.

This guest post was written by Vivek Ravisankar, CEO & Cofounder of HackerRank, a platform that helps programmers hone their skills and connect with companies….

We know there are different schools of thought on this (and some pretty passionate opinions) but it works for us.

Hiring is one of the most time-intensive and critical things we do.

What kind of design decisions do they make when presented with the freedom to do so?

If everything is still going well, we move them onto the second and final coding challenge, the Take Home Project. This is a longer and more intense project. When someone makes it this far, both us and the candidate are pretty committed to making this work.

What does Statuspage do? We make it easy to keep customers informed when things go wrong. Engineers have a ton of work to do during things like system downtime. We dont think you should spend that time answering emails.

The successful candidates show us a lot about their skills. They also have fun with the problems. They get excited about the opportunity to show us what they can do.

Quick sidebar: As much as wed love to show you the actual tests here, were not. If someone read this and practiced ahead, that would be pretty unfair to people who didnt.

We like to think Statuspage is an important piece of any developer teams toolbox.

If they aced the first test, well do a few more rounds of interviews.

Youd be surprised how much we learn from it.

Do they leave good documentation and comments on their code?

Early on in the interview process, we set candidates up with our first test.

All were really looking at is the finished product they send us.

Well certainly chat afterward a lot about coding and technology. But, thanks to these tests, we also have a lot more time to learn other things about the person. How they work on a team, what drives them, how they fit with our culture and values. Things that wont be on the test.

When theyre done, we receive a recording of the candidate doing the problem. We get to see the different steps they take and any comments they left along the way.

We could tell you more, but wed rather you see for yourself. Our trial is free and unlimited, so theres no harm in setting up a page and seeing if it works for your team.

Does the candidate run tests? Do they do enough testing?

We ask that they spend no more than 8 hours on the test. It doesnt have to happen all at once. We understand this is an interview exercise and people have other commitments.

How to build a support team from the ground up

Leave a Reply