Are technical interviews really effective?

As a Software Developer when searching for a new job you may come across employers that like to do technical interviews. I find technical interviews incredibly frustrating for many reasons and I wonder what they really prove.

I have found that most technical interviews involve a person asking you questions that require you to recite some text book definition. I went to college and received my Bachelor’s in Computer Science. Five years ago, fresh out of college I would have had an easier time reciting definitions. Five years in the real world, I don’t talk in text book terms on a daily basis so it’s more difficult to come up with definitions on the spot.

Another issue with these formal technical interviews is a lot of the knowledge and technology I have learned over the past 5 years was not taught to me in a formal setting. For example, in the current position I hold, I took it without having any prior knowledge of ASP, .Net, or Microsoft development. Everything has been self taught. So if I would be asked some question like, “Which is the first level of compilations in the .Net languages?” I would have to answer it with, “I don’t know.” This is simply because in my day to day work that question has never come up and I don’t really need to know it in order to complete my tasks effectively.

So my question is if someone can’t answer questions on a technical interview does that mean that they are not a good developer? I think not. There are people in this world that can pick up a book and after reading it they are able to recite the concepts in it, I am not one of them. Just because someone can answer all questions on a test correctly, it doesn’t mean that they can actually code. I am not disagreeing that I should know the answer to some things and I would be an all around better developer if I did, but just because I don’t perform well on a test doesn’t prove that I am not a good developer.

I understand employers need to have a way to verify that a prospective employee actually knows what they are doing, but administering tests that were probably created by opening a text book and randomly picking questions out of it is not the most effective way. For the job I currently have they game me a mini application develop and I thought this was a really great method. This method allows an employer to see how a developer, designs, architects, and executes code, which is a lot more than answering “What is polymorphism?” does.

Sadly as software developers technical interviews are something we have to deal with as long as there are employers out there that think it is an effective way to evaluate potential employees. There are some you may do well on and others you may completely fail. For the ones that you don’t do well on you have to hope that the technical interview is only a small part of the employers evaluation of a potential employee. For the employer’s that base their entire hiring process on a pass or fail on technical interviews, it is the employer in end that is missing out on really great developers and not you missing out on a job opportunity.

Share/Save/Bookmark  Delicious Digg facebook

This entry was posted on Thursday, March 12th, 2009 at 9:10 am and is filed under Development Related, Rants and Raves, Tech Talk. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

Leave a Reply