As with how an understanding of event-driven architectures is the current hotness for a .NET developer, a decade and a bit earlier it had been Red, Green, Refactor.
Between 2008 and 2012, test driven development was the thing! One interview for a contract role at BNP Paribas had consisted of little else.
Given a requirement, I had to live-code my way towards the solution whilst the hiring manager acted as an animated navigator.
Failing that interview, the suggestion on the way out was to check out XTC London, the Extreme Tuesday club!
Rather than embracing the awkwardness that often comes from trying to learn things in person with random people in tech, I picked up some practise with Test Driven Development by writing a parser to help with a Java to .NET migration… and a couple of years later it was time to begin interviewing again. Naturally, I revisit TDD.
Armed with a solution in search of a problem, I found one that read:
“A robot is located at the bottom-left corner of a 5×5 grid. The robot can move either up, down, left, or right, but can not visit the same spot twice. The robot is trying to reach the top-right corner of the grid.”
Hint: It’s just maths
Cut to April 1st, 2011 and I’m eager to do something, anything to demonstrate some TDD chops. I’d just discovered Redis and so was most definitely going to shoe-horn that into the exercise.
Recent failed interviews at RBS and JP Morgan for not having had enough of a handle on multi-threading meant that this was going in as well!
I really did believe that what I came up with next was inspired:
Using TDD, multi-threading and Redis, I’d show how they could be combined naively to solve the grid & robot problem above. It would satisfy a need to do some overdue writing and it would be an April Fool’s tour de force!
It was met with the only critique ever received:
“Brute force and ignorance.”
Philip Harvey
Some indecent time has passed since that last blog post, I’m in between gigs once again and right now there is no just sticking to the day job.
Leave a Reply