Saturday, January 17, 2009

Technical Certifications: The Good, the Bad, and the Ugly

With the current economic slowdown affecting the software development industry, it is likely that developers' interest in technical certifications may increase. Many of us in the software development industry have probably wondered at one time or another about the value of earning a technical certification and if the benefits of such a certification would be worth the effort and cost involved. Because much of the value of a technical certification is in the eye of the beholder, this is not easy to answer.

A significant part of the confusion and controversy surrounding the question of whether it is worth the effort to obtain a technical certification is due to the differences of opinions and perspectives we all have on the value of these certifications. For example, most of the very talented developers that I have worked with are not certified. However, I have worked with some certified developers who are very good while also working with some who aren't nearly so good at development. It is difficult for me to distinguish between the skills of those who are certified and those who are not certified. Indeed, Martin Fowler has articulated something that I have generally observed among software developers as well: "Certification programs are common in the software industry, yet most capable developers I know have very little regard for them" (quoted from Should there be a certification program for agile methods?).

Things can become clearer when one breaks down the decision in terms of personal control and personal benefit versus portions of the decision outside of one's control.



THE GOOD

Learning New Concepts and Skills

I believe that the best reason for earning a technical certification involves the learning of the material in preparation for the certification. While one may choose to earn a certification for more than one reason, I think he or she is most likely to be happy with the results if he or she sees the learning of material as one of the primary benefits and motivations of that process.

One of the reasons that learning the material can be the most beneficial part of the certification process is because it is completely within one's own control. The benefits gained from learning facts and concepts do not depend on the perspective or opinion of anyone else. The only required costs involved with preparation are time and effort. Some may choose to pay a little money to purchase preparation materials such as a book or pay a lot more money to take certification exam preparation courses, but these are not required.

Of course, if one is already strong in the area in which he or she is considering a certification, then the preparation itself may not be as obviously useful. However, my experience has been that reading books such as the SCJP Sun Certified Programmer for Java 6 Exam 310-065 can fill in areas of knowledge even for seasoned Java developers.

Learning new skills and concepts is something that is entirely within our own control and does not depend on anyone else's behavior or perspective.

Differentiation

All else being equal (but this is rarely the case), having a technical certification can differentiate one from other people applying for the same position or trying to win the same project from a prospective client. A person with a certification may not necessarily be selected over a person with a certification if the person without the certification can demonstrate being a better match through other experiences and qualifications, but having a certification is certainly one advantage (of hopefully many) that a person could advertise.

The degree to which a certification differentiates one from another is largely dependent upon the person making the decision. While one hiring manager or potential client may think the certification is a significant differentiator, another might not care much about it either way. In some cases, a particular certification may be required of anyone applying for a particular position. In such cases, the benefit of the certification is huge in terms of even having a shot at the position.

Evidence

An advantage of a certification is that it can be considered evidence of an individual having at least a certain level of knowledge on the subject. Without custom tests or probing interview questions, it can be difficult to distinguish the developer with seven year of Java experience doing the same thing the entire time from the Java developer with seven years of applying Java to a wide set of disparate problems and issues.

As with differentiation, much of the value of a certification as evidence of knowledge or skills depends on the perspective of the person making the judgment. One potential client or hiring manager may think that a certification provides strong evidence of skill while another may think it only provides mild evidence of any useful skill.

Summing up the Good

While a certification can help one differentiate himself or herself from others and while a certification can also be considered evidence of a developer having obtained at least a certain minimum level of competence in an area, these two benefits depend largely on people other than those who are actually certified. If a manager or client does not hold much stock in the value of a certificate for demonstrating competence or for differentiation of a job candidate, these benefits will be minimal. The actual learning of new knowledge and skills, however, can be of tremendous benefit to a developer and make him or her much better at what they do. The control of the degree of benefit for learning new material is in the hands of the person studying for certification and is therefore the most likely to achieve the benefits desired.

It is important to note quickly here that there are other ways to differentiate one self and at the same time provide evidence of one's experience and competence. These include things like presenting at conferences, presenting at user group meetings, writing articles and papers, writing blogs, participating in technical forums, etc. All of these can be cited to provide evidence of one's experience and competence and at the same time prove to be differentiating factors. It is somewhat a matter of taste which of these a person prefers to use to differentiate themselves and provide evidence of what the person has to offer. A certificate certainly appeals to the person who does not want to present or even write publicly. The question is, of course, what does your potential employer or client value most as a differentiator and as an evidence of your experience and skill set?


THE BAD

Perception of Fairness of Standardized Tests

There is some controversy surrounding the fairness of standardized testing, especially for undergraduate and graduate admissions and scholarships. Some of these same controversial issues can be associated with certifications that rely solely or heavily on standardized tests. Again, it is the judgment of the potential client or employer about the significance of a certificate being heavily or solely based on a standardized test that matters most. Whether I think it is fair or not really does not matter unless I am the evaluator.

Quality of Standardized Tests as a Metric

Perhaps even more troublesome for potential clients and employers regarding certifications that are based heavily on standardized tests is a question about how well the applicant's ability to answer (or possibly even guess) answers to multiple choice questions translates to real competence and real capabilities. Again, this question is far more significant in terms of the person evaluating the significance of a certificate than of the person who has the certificate. Even if I think the certification questions did a good job of testing my knowledge, that does not matter a whole lot if potential the potential employer or client does not agree.

In the previously cited post from Martin Fowler, he points out that some skepticism of certification programs directly relates to questioning of the relationship of the certification to competence.

Summing Up the Bad

The nature of a certificate can play a heavy part in influencing peoples' perceptions of the value of that certificate. I admit, for example, that I am more impressed with the Sun Certified Java Developer (SCJD) certificate than I am with the Sun Certified Java Programmer (SCJP) certificate because the Developer certificate involves an essay and a programming assignment while the Programmer certificate only requires a multiple choice evaluation.


THE UGLY

While these are some potential questions and reservations on the part of people regarding standardized tests and their credibility in determining a developer's competence, there are some really ugly things that can be far more damaging to the perceived value of a particular certificate.

Cheating

I maintain that the most valuable part of earning a certificate is (or should be in most cases) the acquiring of the actual knowledge and skills to enable one to pass fulfill the assignments and evaluations involved with that certificate. We have all heard that cheaters never win and that cheating only hurts ourselves. These are only partially true. Cheating on a certificate assignment or exam might actually benefit the cheater, especially in the short-term if he or she then has an unfair advantage over other applicants. While it is true that such cheating often does hurt the applicant in the long term because he or she will often be exposed for not really understanding that information and because he or she may not have the knowledge needed to be successful, it is certainly NOT true that cheating only hurts oneself.

Cheating obviously hurts those who take the same exam or fulfill the same certification requirements without cheating by providing an unfair advantage. However, I think that cheating can be far more damaging to others when it tarnishes the certification itself. Because the other guy's perspective is so important in the value of a certificate beyond the learning of the material, it is undesirable for that perception to be tarnished. If it is learned that mass cheating has reduced the ability to use the certificate as a differentiator or as evidence of knowledge gained, then the certificate becomes less valuable. The more cheating is perceived, the less the certificate is worth.

For a much more thorough discussion of how certification cheating hurts many people including the cheater, those who legitimately earn their certificate, employers (this includes clients), and the certification program itself, see Paul Sorensen's series of brief blog postings on the subject available via links on the conclusion post (Part 7).

Dirty Money

I like money. I wish I had more of it. No, actually I wish I had a lot more of it. That being said, money can cause trouble even with the best of intentions. One thing that just feels "a little dirty" is the convenient manner in which organizations that issue certificates also conveniently provide for-free training to help developers pass their certification requirements. I am not alleging that these organizations necessarily give any unfair advantages to candidates and I am definitely not insinuating that these organizations trade payment for training for a certificate.

I believe that most significant organizations that issue certificates do try to make it something of value to certificate holders. However, it can be a perception issue for the hiring manager or potential client if that person believes that the certificate training/issuance is more about building revenue for the certification organization than about actually demonstrating an applicant's competence. As discussed earlier, the ability of a certificate to actually demonstrate a strong correlation with a competent developer is most important. Whether it is the nature of the standardized exam or concern that the applicant has simply been spoon-fed information from the certificate sponsor, anything that potentially reduces the correlation of a qualified developer to an earned certificate can be dangerous to the value of that certificate.

It is only fair to point out that certificate sponsors are not the only ones who have monetary benefits from providing information to certificate candidates and might be tempted to cross a line to keep satisfied customers who will refer other customers to them. In fact, at least the certificate sponsor has a conflicting monetary interest in keeping the certificate a valuable item by not making it too easily achieved. Diluting the value of the certificate by making it too easy to obtain does not help them in the long term.

Good Intentions

It is not only companies and organizations trying to make a buck that might go too far in providing aids and help in fulfilling certification requirements. Previous certification candidates may have good intentions of helping others out by providing a retrospective on their experience. While this is a laudable goal, it can actually be a disservice to others who have earned the certificate if it goes to far and releases too much information.

Summing Up the Ugly

While there are some nice benefits associated with the certification process for both candidates and for future employers and clients, there is also an ugly side of this that seems to be present in any human endeavor that involves fame and fortune. Cheating and concern over the fox guarding the hen house are key aspects of the uglier side of the certification process.


FINAL THOUGHTS ON TECHNICAL CERTIFICATIONS

Technical certificates can be valuable to many employers and clients. They can provide evidence of potential employees' knowledge and capabilities and can provide candidates with another option for differentiating themselves. Perhaps most importantly, the goal of earning a certificate can provide a valuable goal or target that motivates a person to study for and prepare for fulfilling that certification's requirements.

The value of a particular certificate depends largely on the person. It would be a mistake to assume that just because I think a particular certificate is valuable or worthless means that another person feels the same way. Much of this perceived value of a certificate is out of our own control. The only aspect of the certification process that is entirely within our control is the opportunity to learn new concepts or to solidify our current knowledge.

With these thoughts in mind, I consider the following questions in deciding whether to pursue a certificate or not.

1) Does the certificate cover areas that I am interested in or think potential employers and clients will seek for future work? If so, that is a strong reason to at least start preparing for the certificate requirements.

2) Does the certificate have a good reputation? This is difficult to answer, but one could start to determine this by searching online for discussions regarding the certificate's value, by asking colleagues for their opinions, and possibly even asking prospective employers or clients about their opinions. Obviously, I'd be more apt to pursue the certificate if it was generally regarded as good indicator of a qualified individual. If the certificate itself has a tarnished image, it still may be worth preparing for it simply to learn the information even if it is never officially earned.

It is difficult to think of many negatives of preparing for a certification other than the investment of time and energy. The potential advantage of such preparation is significant, so the ratio of value to cost is very high. When it comes to actually paying for and taking any tests associated with certification, the ratio of value to cost depends on many factors including the certificate itself and the perception others have of that certificate. I believe that the person who earns a certification for his or her own satisfaction (such as learning new concepts or proving one's knowledge to one self) is generally more likely to be happy with the results than the person who primarily wants to be certified to influence others' opinions of him or her (such as employer or client).


Other Resources

Because much of the decision regarding whether to fulfill the certification requirements or not depends on others' perspectives, I attempt to provide a taste of some of these in a general and specific sense with the following links. It is not surprising that the sites selling certifications point out their many advantages. I try to balance these with some alternative views as well. A really thorough source of articles with focus on IT compensation and the value of certifications is Foote Partners in the Press Since 2005.

Hot Tech Certificates in a Cool Job Market

Why Certify? Importance of IT Certification

Certification: Is ANY Certification Worth Pursuing?

Study Shows Downside of IT Certifications

• Martin Fowler: Should there be a certification program for agile methods?

Certification Uncertainty

Java Certification

Oracle Certification Program

Microsoft Certifications Overview

Certain Measures for Uncertain Times

Noncertified IT Pros Earn More than Certified Counterparts

Get Certified

Here's One Major Employer that Requires Its IT Folks to Be Certified

To Certify or Not to Certify: Getting Paid for Your Skills

Oracle Certification: To Certify or Not to Certify?

SpringerLink: To Certify or Not to Certify?

The Hub Certifications: Why Get Certified?

UPDATE (18 January 2009): The following links to related resources have been added since the original post.

• Eli White: Programming Certifications

Java: Why Certify?

Does Certification Really Matter?

Certifications - May I See the Menu?


UPDATE (19 February 2009): The following links to related resources have been added since the original post.

DeMarco on Certification and Licensing of Software Engineers

Do Certifications Matter?


UPDATE (1 May 2010): The following links to related resource were added since the original post.

• "Uncle Bob": Certification Don't Waste Your Time!

Okay, Let's Talk About Certification

2 comments:

p001b0y said...

Great article but I still remember the "adaptive" exams that were the Microsoft Certified Systems Engineer exams and also "Paper CNE's".

Some of our most spectacular outages have been caused by individuals who have every possible certification in their domain of expertise but have never been on-call or worked alone in a production setting.

For me, the more certifications someone has, the less likely they are actually going to know how it all actually works. There are obviously exceptions but I've found that people who really know what they are doing obtain certifications solely to satisfy the requirement of the majority of hiring managers who believe that certifications are valuable.

Hmm....I sound bitter....

Dustin said...

p001b0y,

You are not alone in feeling that "the more certifications someone has, the less likely they are actually going to know how it all actually works." For example, Eli White has written "I find that programming certifications are essentially useless. More to the point, I find that typically the people who list certifications on their resume as part of their qualification for the job, are obviously not qualified."

It does not matter whether one agrees with this or not. As long as a prospective employer may feel this way, it must be considered in deciding the value of certification.

Thanks for your feedback. I think it helps provide another example of why I believe that people will be most happy earning a certification when they do so for personal reasons such as obtaining new knowledge and proving something to themselves rather than doing it for favor with other people.