How to estimate the quality of an employer's code base in an interview for a programming job?
September 12, 2008 5:39 AM
Subscribe
I have an upcoming interview for a programming job. I'd like to find out a bit about the quality of the code of the product I'd be assigned to develop, i.e. is it dailywtf material or decent enough. Any ideas how to get some information out of the interviewers, at least some of whom are assumed to be technical people?
Some good indicators include things in the
Joel Test: if the company fails on many of these counts, it's a safe bet that the coders aren't too "professional" and probably don't know what they're doing, and the code will most likely be similarly bad.
Asking "is your code any good" probably won't produce an useful answer, or make me look too good. It's probably a better idea to ask about things similar to the Joel Test, things that are closely connected to the code or the coding process, and then form a good enough picture from this data. Asking coders or other well informed technical people good questions is crucial, so what type of questions would you ask, and what other telltale signs would you look for?
posted by lifeless to work & money (12 comments total)
6 users marked this as a favorite
The best question I know of for getting a good feel for a team is "Let's say feature X was requested or bug Y was reported, what is your process to plan, write, and eventually release the code?" Their answer to that will answer a lot of Joel's questions and other important ones, and if they are vague about anything you can always ask follow up questions. Other good process questions might be "Do you refactor or otherwise modify the core design of your code when major changes are made?" and "Do you have formal coding standards and if so what are the main points?". You could also probably ask specific technical questions, such as "Do you use many global variables in your code?" and "Do you separate UI code from program logic?".
posted by burnmp3s at 6:09 AM on September 12 [1 favorite]