I thought I’d recount a tale from a couple of years ago when we needed to hire a coder directly to retain IP for a project we were funding.
Having not hired developers for many years and having previously had the services of a fully staffed HR department to perform such jobs, we were at a loss on how to go about this function.
So we tentatively put out some job ads through various media and waited for responses. Sometime later we started receiving CV’s with application letters. Trawling through these we discounted the bulk of the applicants who stated that they did not code currently, but would love the opportunity to learn.
Having narrowed it down to a handful, we started making appointments with applicants which was surprisingly difficult. We got the distinct impression that they would be doing us a favour by agreeing to interview. So we meet the first at our head offices, she turns up and starts telling us about her troubled past and her journey to learn to code. Not entirely appropriate for a first conversation, however I ask some basic coding questions which she fails completely.
For those of a technical bent, a question I normally start off with is what is the solution to the boolean equation:
1 + 1 =
The answer is not 2.
The next candidate I meet in my offices in London tells me he was a substitute university lecturer at Bangalore University and one of his teaching subjects is boolean, so I skip the above simple question and ask him immediately to convert the following binary number to decimal: 101 (The answer BTW is 5)
HE FAILS TO ANSWER!!!!!!!!
The third candidate I also meet in London and he turns out to be in his mid 40’s having studied recently to become a coder. Now generally coding is a young mans game, however I admire his pluck, so proceed to interview. Being of an older generation, he interviews very well, so I ask the standard boolean questions.
I ask him what the decimal of binary 1001 is, he answers 5 which is wrong (the answer is 9), however I could see him making the calculation and his method is correct, he simply made a basic error.
As we had no other candidates available, we make him a tenuous job offer on a very restricted contract to allow us time to asses whether he would be able to grow into the job. His acceptance came with several conditions:
1. We provide a computer as he has none
2. We agree in advance to a pay rise after 6 months
3. If he isn’t able to perform the job, we provide sufficient training to ensure he is brought up to speed.
We withdraw the offer and eventually managed to find a pretty good, fully qualified coder, the only problem being he spoke little English.
In summary, I have observed for several years now a lack of skills in candidates applying for jobs, the most qualified of which tend to be the least capable. If you have completed a 3 – 5 year degree in any form of IT, I would expect you to understand boolean. If you don’t, you can’t possibly understand logic and if you don’t understand logic you can’t code.