My primary responsibility is a software developer, but I have also been tasked with doing the first level technical interviews of perspective clients. I enjoy it, so I am glad to do it, but I am finding it challenging to objectively screen candidates. I have a list of programming "trivia" questions and even some programming challenges they write via live meeting, but I want to take it to the next level.
What I am thinking is I could select a really simple (not just form typo) bug in our actual code base and then had them fix it via Live Meeting. Of course they would need to ask questions, and I would be there for that, but that would also be part of the interview, do they know what kind of questions to ask, etc.
Downsides:
- Intellectual property issues: I don't think there is too much of a threat of our code being stolen, but our lawyers might want an NDA before we can interview someone . . . .
- High domain knowledge needed: Less of an issue because I would be there to explain things as they needed them.
- Might take a couple hours: True . . . but still cheaper then flying them in for an interview and putting them up for the night.
- Code might scare them off: Showing a candidate a legacy code base might be scary, although it would be better to scare them off before we hire them.
- Code ownership issues: Could I actually use the code they wrote in an interview in a production application without compensating them?
Upsides:
- As real world as it gets: This is almost like hiring them on a trial bases, but without the pay.
- Kill two birds with one stone: I screen a candidate and I get one of my bugs fixed, of course this assumes they can fix the bug . . .
- Tests for exactly what we are looking for: The ability to work in our existing code base is what we want, so lets make sure they can do it.
- Makes coming up with interview materials trivial: There always seems to be bug reports and feature requests. No shortage there.
The intellectual property issues might be a deal breaker. I would obviously need to get it cleared by management and legal. I am curious what everyone things from a programmer point of view? What that scare you off if it happened during an interview?
NOTE: If you think this is a TERRIBLE idea, then please leave an answer (or vote one up) that says that. That is why I am asking, to find out if people thing it is a good idea.