Four great questions to ask in a technical interview

I’m excited to be able to say that I accepted a great job offer at a dot-com in San Francisco. I get to start right after I graduate in May. Now that my job search is over, I want to share some of the questions I had for interviewers that got the best responses on the spot.

• “If you had to work in a different group or department within your company, what group would you join? Who is working on something you’re interested in?”

Hands down, this question got the most, “Ooh, that’s a good question,” responses. I like it because it tells me what groups have exciting new projects within the company, and whether the employees are excited about their company’s up-and-coming projects. I get excited when engineers are excited about what their coworkers are doing. I think interviewers like this question because it’s a little out-of-the-box and because they get to talk about their own experiences with and opinions of the company.

This is also a great question because you can easily ask it of every interviewer you get. When I meet six different interviewers from one company over the course of a day, it’s hard to come up with more questions I haven’t gotten answers to already. It’s also a question that isn’t usually answered already over the course of the interview.

• “Do project managers tend to come from technical or managerial backgrounds?”

This question says that even though I’m a programmer, I’m thinking about going into project management, and I want to make sure that track is available for me at this company.  I don’t know if this always comes across, but when I talk about the answer with the interviewer, I like to express my relief that the project managers have technical degrees. It can also be a warning sign if managers are overwhelmingly non-technical, but I have yet to hear that answer in an interview.

• “What kind of software development process do you use? Agile? Spiral? Waterfall? Something else? Do you think it works well for your group?”

I actually had a couple interviews at the Grace Hopper Conference last year where the interviewer didn’t know what I meant by development methodology – not a great sign. I happened to be interested in companies that use the Scrum method, but even if you don’t have a preference, the interviewer’s answer gives you an idea of whether the company has company-wide programming guidelines. If the interviewer responds, “Well, it’s a big company, so different groups do different things,” I like to follow up by asking what their group uses. If the interviewer is an HR rep, I ask if they can get back to me with the answer.

Of course, make sure you read up on different kinds of programming methodologies before you ask this question. Even if the interviewer answers with something you haven’t heard of, all you have to do is ask them to tell you about it, and say, “Oh, that sounds like [another methodology you do know about].”

• “How is writing code for your company different from writing code at other companies?”

I also like to phrase “other companies” as “normal companies” (though you can’t get away with that everywhere). This question is really another way of asking, “What makes your company special?” without using such vague wording. I like hearing about the programming challenges particular to the company, and I want to communicate to the interviewer that I’m interested in more than just “ordinary” programming (whether or not that’s what the company has to offer).

Have any other great interview questions to suggest, or any improvements on mine?

  • Alex Ehlke

    Thanks, interesting ideas with meaningful backgrounds.

  • Jensen

    Thank you for sharing this!

  • Pingback: Accidentally in Code » Twitter Weekly Updates for 2011-04-03

  • Karen Cecile

    I’ve recently been through the process as wel (as a manager, though)l. For small companies, I ask about funding model. This gives an idea of company stability and control. You want a good balance of risk and autonomy/creativity. For larger companies, I ask about product life cycles for legacy software and about emerging vertical markets. This gives an idea of how much support versus new development there would be.