It’s been a while since I was on the receiving end of a software engineering interview. But I still remember my favorite interview question. It was at MemSQL circa 2013.
This blog post discusses a programming challenge from a software engineering interview. memcached, an in-memory key-value store, provides a built-in way to atomically add k to a number, but it doesn’t provide other arithmetic operations – there is no ‘atomic multiply by k’ operation. The challenge required interviewees to add a `mult` command to memcached. The challenge is well calibrated for interviews as there is only one correct answer and it is also a good representation of what most real-world programming is like.