When you are looking to hire skilled programmers, how do you know if the person you are interviewing indeed has the capabilities he or she is talking about? Well, just let them show you!
Over the years, I have been involved in interviews with job applicants quite a lot. In my experience, just talking, though important, will never help in determining whether the applicant actually possesses the skills at the required level. Therefore, I started doing a coding dojo with applicants that passed the first ‘just talking’ interview.
A Coding Dojo is a meeting where a bunch of coders get together to work on a programming challenge. They are there to have fun…¹
I usually ask up to three existing members of my team to participate in a coding dojo with the applicant. To make sure we enjoy the coding dojo as well, each time a different challenge is selected. During the coding dojo the applicant can show his/her programming skills, but it will also challenge the applicant in analytic thinking, teamwork, asking for help and explaining what is going on. This is great input to select the right person for the job!
One of the coding dojos I enjoyed most is not necessarily a real programming challenge. However, it appeared to be a challenge for sure and will certainly appeal to developers who also like escape rooms! The challenge consists of an escape room serviced as a RESTful API, hence the name restcaperoom. You can run it yourself using the instructions provided on its GitHub repository². By sending HTTP requests to the API, you discover the room you are in from the JSON response.
{
"enters": {
"link": "http://localhost:8080/rooms/aecrpncaxqjhvarisd",
"type": "room"
},
"i_am_a": "door",
"panel": [
{
"color": "green"
}
],
"self_link": "http://localhost:8080/doors/0000"
}
Picking-up items, solving puzzles and unlocking doors brings you to other rooms and hopefully to the exit. Having some knowledge about RESTful APIs might be helpful, but that could be picked-up during the coding dojo as well.
The fastest team I saw going in was able to find the door to outside just after an hour. Maybe you want to give it a try as well?
The room IDs are randomly generated every time you start the restcaperoom. If you are really desperate, you could add some logging to print them, or you could try to break the SHA256 encoded door keys. But be aware, I would consider that cheating!