Programming tests separate wheat from chaff
I recently helped a recruiter friend’s efforts by developing an answer sheet for a programming test his company was using. It turns out some of his candidates with advanced degrees were being rejected due to poor performance on this particular test. His thinking was that if I could take the test and provide him with an answer sheet, he could better screen his potential candidates and not waste time passing along those who had little chance of being accepted.
The programming test asked only one question on Structured Query Language and a few about code development for the C programming language. The C programming language questions, by the way, revolved around the subtleties of pointers, pointer pointers and function pointers, which I covered in detail in my 1993 book, “C Pointers and Dynamic Memory Management.”
The use of programming tests to screen job candidates is a widely debated topic. Some arguments against these tests are the amount of time they take, the use of poor/limited/obscure test questions, or that the tests themselves are “offensive” or insulting in their focus on arcane knowledge.
Proponents of testing say they can weed out incompetent programmers (some people will quit or refuse to take tests instead of embarrassing themselves, which is an indicator in and of itself). Others say tests can find exceptional programmers (Facebook uses testing this way) or screen new programmers (the infamous FizzBuzz question). I should also note that there are variations of the programming test to include timed tests, and audition projects that have their own set of pros and cons.
Over my career I have clashed a few times with the human resources department over my desire to use programming tests in screening applicants. The HR department would not allow the testing, citing “legal reasons” related to questions that may be misconstrued or biased in some manner (like toward English speakers). Personally, I think that HR was being overly cautious because I was talking about programming questions not personal questions.
In my experience, programming tests are extremely effective in screening candidates and far superior to using interviews alone. I have been burned by hiring people who talked a good game but failed to deliver. While I understand that some people don’t test well or are insulted by the “gotcha” type questions, I consider these (and my experience confirms them) to be more the exception than the rule.
For me, the central and most important reason that programming tests work is they ensure the person can demonstrate a certain level of competency. So, what are the ramifications of this for government agencies? Using well-designed and well-written programming tests are worth the price of legal scrutiny to effectively screen candidates.
Michael C. Daconta (firstname.lastname@example.org) is the Vice President of Advanced Technology at InCadence Strategic Solutions and the former Metadata Program Manager for the Homeland Security Department. His new book is entitled, The Great Cloud Migration: Your Roadmap to Cloud Computing, Big Data and Linked Data.
Posted by Michael C. Daconta on Dec 04, 2013 at 11:16 AM