Spectrum of Opinion
We’ve heard a full spectrum of views on the subject of certification: there are some who are firmly opposed to certification who argue that certificates are of no value or that “certificates mean that you can pass a certification test, not solve real world problems”. Often experienced coders without certification themselves, they believe that the only way to show competence is either through displaying relevant experience in the form of a high-quality portfolio or by a hands-on demonstration of their ability to code to anyone who wants to see.
There are others who consider that certification is a valid method that can be used to demonstrate a level of competence. The consensus here is that certification is particularly useful for early-stage developers new to a career in programming but that it can also be advantageous for experienced developers who are starting out with a new language – a portfolio of projects in other languages can demonstrate a person’s general ability to code while a certificate in their newly learned language shows specific competence in that particular language.
It’s interesting to hear the opinions of managers who hire programmers too – these range from “I have hired programmers with certifications and they were completely useless in the real world” to “having certification can show a defined level of competence and has the potential to make my job easier – as long as the certification process is thorough and not just a box ticking exercise”.
A Point of Agreement
One point that receives general agreement across the board is that certification shouldn’t become compulsory. In many walks of life certification is compulsory: if you are unfortunate enough to require heart surgery you expect the surgeon performing the operation to be a qualified doctor and everyone driving a car on public roads should have a licence... but programming is different. Programming is relatively new, has evolved incredibly quickly and there are many different ways that people gather the skills to become a competent developer. A one-size-fits-all method of certification across such a complex and quickly evolving workplace would be destined to fail.
Demand for Certification
Despite the controversy surrounding certification there is considerable demand for it – both from students who would want acknowledgement of the skills that they have achieved during a course and from industry managers who use certification for information when choosing programmers to hire.
However, there have also been criticisms of the process of many of the certification enterprises, in particular that students can learn to pass a certification without really learning to code. Managers want to know that a programmer can produce useful code and be able to solve real-world problems and students who achieve a good level of competence want to make sure that the process of certification is rigorous enough that their certificate actually means something!
It was with all this in mind that we designed our new certification program – the aim being to create a certification process that fulfils the needs of industry managers and students alike. To do this we created a process of certification based on real-world programming skills. We have found that there are no shortcuts to this process: expert observation of a developer’s coding and communication behaviour in a real situation is needed for accurate assessment... and our certification process has this at its heart.