“What’s the number after F in Base 16?”
“Write a program to print out all the numbers between 1 & 100, replacing numbers divisible by 3 with Fizz, numbers divisible by 5 with Buzz, and numbers divisible by both 3 & 5 with FizzBuzz.”
Anyone with the guts to put the term “Software Engineer” on their CV should at least be able to solve terribly simple problems like these in a matter of minutes, in whatever languages they list on their resume (FizzBuzz took me just over 3 minutes in Java), but the reality is that a large percentage of Computer Science graduates cannot provide intelligent solutions to the FizzBuzz test in under 15 minutes.
Where does the problem come from?
A priority system created ages ago, handed to us, and followed to a fault, by the decision makers, concerning the content of our curriculum, without any consideration for new developments in IT. A society that values individuals based on the grades contained in the first degree. Students that are more passionate about passing exams, than learning new concepts or doing any research.
What’s the effect?
My Introduction to Electrical Engineering and Computer Programming lecturers taught me a lot of the things they learnt in the 80s like they were the most current version of information available. So back in 200 level in school, if I hadn’t known any better, I’d call myself a programmer because I could replicate the Runge-Kutta algorithm in Q-Basic. Pitiful.
Because of the faulty priorities in our educational system, we’re mass producing science and technology graduates who know little or nothing about current developments in the fields they are supposedly experts in. This wouldn’t create so much of a problem if big companies had better hiring processes than they currently do, but the reality is some of the most talented people are being weeded out because they don’t have a stack of certificates to brag about. This doesn’t seem to be a problem in the western world, and on the start-up scene in Nigeria, as I’ve read a couple of articles that implied that having this stack of certificates (or at least proudly displaying them in your applications to companies like Google can end up counting against you), and I’ve experienced first hand, the interview process at companies like Hotels.ng and iROKO TV. Intelligent.
We desperately need a shift in our priority system, where actual skills are ranked higher than certificates, where people with actual code experience are hired over OCA & OCP holders, where the grading system is scrapped (like it is in MIT), and maybe then, we’d have more employable graduates, and by extension, more efficient companies.
A Computer Science degree, and all the certificates in the world, doth not a good programmer make.
Photo Credit: gui.tavares via Compfight cc