About Me
- Name: SWeidner
- Location: Elk Point, South Dakota, United States
My Blogger Code
B5 d+ t k s u- f- i- o- x-- e l- c (decode it!)
My Geek Code
GAT/IT d-(+) s+(): a C+++$ ULC+++>$ P++>++++ L++$>++++ !E W++>$ N+ !o !K w+()@ !O !M- !V PS-(--)@>--- PE+ Y-- PGP>++ t+ !5(-) X+ !R- tv-(+)? b+ DI++++ D++>$ G e+>++ h----(-) r+++ y++++
Links
Blogmap
AdSense
Archives
Steve's random ramblings and technical notes
Monday, February 27, 2006
Interviewing Hackers
Interviewing Hackers
Traditionally, one asks technical questions at an interview to verify that a candidate actually knows what he claims to know. Such questions may target professional certifications, specific technical trivia, or code written previously. The primary weakness of such methods is that the candidate has significant control over which claims are open to verification. The candidate may be tempted to bluff, for example, by cramming facts during the few days prior to the interview.
We suggest using technical questions to gauge a candidate's self-study ability. Ask a candidate to solve a programming problem on the spot -- but determine in advance how much familiarity the candidate is likely to have with the given problem.
For example, imagine you ask the candidate to write C code to reverse a string in-place. How do you interpret the candidate's performance? There are three cases:
1. If the candidate claims to be a expert, you can expect convergence to a correct solution with negligible trial and error.
2. If the candidate is somewhat familiar with the problem domain, it's hard to know what to expect. It is not clear how this uncertain kind of questioning provides useful data to the interviewer.
3. If the candidate is unfamiliar with the problem domain, you are tapping his ability to learn new material. When a candidate is denied access to a domain expert, self-study ability can be revealed.
Hence, the interviewer must carefully select programming assignments using data uncovered by traditional technical inquiry. On one hand, a candidate wants to answer technical questions comprehensively. On the other hand, comprehensive answers better reveal what the candidate doesn't know. These two opposing goals work to keep the candidate honest.