As someone who interviews developers, I had been looking at ways to improve our current interviewing process. I’m not a fan of written tests or of coding on white boards since they don’t accurately represent the day to day requirements of a developer and I don’t even think they are good surrogate markers.
Knowing Barry Cranford through the London Java Community, I thought I would ask him. Given that he probably sees more interview processes than anyone else I know it seemed a fair idea. After a quick chat over ice-creams (it was a hot day!) I suggested to Barry that I thought we should get potential candidates to do a small technical task before they came in so that we could go through it. That way I could get to see exactly how they coded and how they thought. Barry suggested we could improve it by building on it in a paired-programming exercise during the interview. That way we would be able to see how they worked in a team and in a pressurised environment.
I thought this was great and spend some time coming up with a task that could be completed within 1.5 hours but had some natural extension points for the paired programming exercise. The trouble was, I had no one to test it on other than myself and guys in my team. Again, the guys at the LJC came to rescue by volunteering to take it. I was pretty proud of the test and thought it was quite good as it allowed candidates to showcase their skills without being too hard but it was completely shredded by the reviewers! As one of the guys had pointed out, the task made too many assumptions about the domain knowledge of the candidate and the requirements were too vague for someone outside of the industry.
So I went back to work and rewrote it. The acceptance criteria became much tighter, I removed some of the ‘help’ than was actually misleading and reworded it so that the target goal was as clear as possible. The result is a solid task that is now being used for teams other than my own. So extra kudos for me and better candidates for the company.
Without the community input there is no chance that it would have been half as good. Worse still I would have been stuck with a bad test that I thought was good. I am very grateful for the various guys at the LJC for the time and effort they put in to help a fellow LJC member, so special thanks to Mustapha Hanafi, Martijn Verburg and most especially to Ged Byrne for all the help. Thanks guys.