I was thinking the other day about how I try to quickly evaluate someone’s developer chops during a phone interview. One of the things I try to do is ask something baked in to the theory of what people learn from school. This is less about trying to see if someone has a formal education on the topic, but more that they are alternatively the type of person to read about these things. I think that’s a really strong character trait; the interest and motivation to independently learn the ins and outs of your field. There’s no real reason a programmer can’t go throughout their entire life never spending much time learning about design patterns, or how the compiler works, or other academic subjects of computer science. They could still very well succeed in their career, and be perfectly happy, but maybe never truly shine as a star. But, when I am evaluating a prospective employee, I tend to care about things like this. I want the guy who is passionate about what he does. I want the person who will help try and drive us towards goals, and not just be clocking in.
Another thing I like to be able to evaluate is how a developer will make technology decisions. They will certainly be using their judgement on things throughout any project, so hopefully their judgement is good. I recently came up with something that I think may show how someone thinks. It’s a simple question:
“How would you build a clone of twitter if you could only write 20 lines of code (in any language)”
The answer from a developer may sound something like this:
“I would set up a mongo database with the schema for tweets, and then write a small series of small scripts that can handle the functional requirements in a lisp-like DSL I’m working on right now.”
The answer from a new developer, or graphic designer may sound like this:
“I would do a wordpress install and see if we can get some of the social plugins to function like Twitter.”
The answer from a developer who is interested in business objectives:
“Before we do that, we should set up a landing page with exclusive invites only to test the demand for this Twitter-like product”
and so on…
There’s not specifically a right or wrong answer to this question, but based on the type of ship you are on, these answers can be very revealing. This does a lot to check prospective employees as cultural fits. The question can reveal for example, that the developer has a cost-cutting attitude that may be perfect in a services firm, but horrible in a vc funded startup.