|
|
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Even in today's economy, tech companies regularly complain that they can't find enough qualified candidates to fill software development positions. You might expect them to loosen their requirements and provide more training as a result, but actually the opposite seems to be true: Screening procedures are getting tighter. The latest trend is to subject interviewees to elaborate quizzes designed to assess their coding and problem-solving abilities.
The company best known for this is Google. Past applicants tell tales of a head-spinning battery of coding problems, riddles, and brain teasers, many of which seem only tangential to the task of software development. Other large companies have similar practices -- Facebook and Microsoft being two examples.
[ Speaking of quizzes, see if you can pass InfoWorld's programming IQ test, round 1, and programming IQ test, round 2. | Get software development news and insights from InfoWorld's Developer World newsletter. ]
Are these kinds of tests the right way to hire developers for your business? Maybe. You'll need to assess an applicant's skill in one way or another, but it's also possible to take the whole interview-testing concept too far. Here are a few thoughts to keep in mind when crafting your test questions, to avoid slamming the door on candidates unnecessarily.
1. Recognize that tests are artificial scenarios
When you administer a coding quiz or some other kind of test as part of the hiring process, you're putting candidates in a
very strange position. You're usually asking them to solve some hypothetical problem based on sketchily defined requirements
and parameters, and you're asking them to do so in an extremely limited period of time. They can't collaborate with anybody
else, and they're not allowed access to any reference materials. Although this scenario is familiar to everybody from school,
it's not one that crops up very often in the working world, which means it's not necessarily the best benchmark for how a
candidate will perform on the job.
What's more, not everyone performs equally well at tests, and candidates are often under a lot of stress during job interviews in general. Don't assume you can gauge candidates' personality and working style based solely on their test performance.
2. Don't set the bar too high
When asked why they use tests as part of the hiring process, companies often say it's a way to find "the best and the brightest."
But is that really what your vacancies call for?
True, some amount of software development involves crafting elegant new functional units and designing novel algorithms. But a good portion of it is devoted to considerably more menial tasks, such as debugging, refactoring, and code maintenance. Before you craft an interview exam that would put Bell Labs engineers to shame, ask yourself whether a candidate with a doctorate in computer science would really feel fulfilled working on the tasks your position actually requires.
Also, don't overlook the value of hiring candidates with less experience and training them to work in your company's style. Not everyone who takes an interview exam should have to score an A to pass.