Hello my dear senior friends in SW engineering , how do you interview new recruits for programming ?Do you start with phone interview and continue on written tests to face-to-face interview? Eventually it will come down to your experience and gut feeling? Most of times we do it in that way. But we have experienced some best practices of picking "better" programmers!
In an environment like work we need more “practical programmers” than just “good coders”. Because most of times our programmers will need to directly work with end user and understand the requirement from business perspective. So we have more responsibility to choose “right” people from interviews.
We take advantage of intern programs, we hunt down the smart CS/IT students and individually ask them to apply for an internship with us, because if you wait around to see who sends you a resume, you're already missing out.
In one incident tried asking applicant to develop a program, I have used a very general requirement, which doesn't need any domain expertise (telco), but require some programming experience. I normally ask to write mathematical method to calculate something, instead of expecting the programmer to do what I think should be done implicitly, what would be a better indicator in my opinion is to see how the s/he tries to ask questions on the scope of the program, purpose, usage and limitations explicitly. Unless the programmer is very familiar with the purpose of the program, he/she should not assume what is not stated, but should try to elicit them. Also I would like to try asking to write a function using basic formations related to String in Java. This is rather simpler one but ask them to write a production like code and then see if it takes care of obvious things like null string, empty string etc.
For them it's an opportunity to show their think deep ability and how good they are in understanding requirements and finding gaps. This tips are not hard and fast rules to find good programmers, in fact there are no rules to find them. You just have to work through some indicator and your gut feeling. Let me know what are the tips you guys are using to find good programmers on interviews. Please comment.