Thursday 29 October 2009

The Pros and Cons of IT Certification

I have been planning to write this post for a long while. It was on my to-do list for ages and just kept getting putting off. Well I am finally getting around to it.

This blog deals mostly with Microsoft certifications primarily because it is the certification group I am familiar with and also because I have take quite a few exams with Microsoft. I like to think I have a good understanding of the IT certification process at this time

733137_my_two_cents I have met quite a few people who criticise certification and in some cases I agree with them and in others I believe they are entitled to their opinion. I have heard arguments from people that are on both sides of the certified fence. I have heard the same things about university degrees as well again from both sides. Some will argue that a degree with stifle creative thinking, others will say it shows a willingness to learn. Both have merits in their points of view.

For what its worth, I believe that certifications prove one thing. That you knew enough at one time or another to pass them. That’s about it. It is the same as a university degree in that regard. You passed your exams that your lecturers set for you and that garnered you enough credits to obtain your degree.

It does not mean that you everything there is to know about the subject you are certified in but at least it does prove that you knew something at one time to pass it.

So a couple of pros for IT certification

  • Encourages you to learn some material about the subject matter that you may not have know and/or possibly should have known.
  • Gives people a quick and relative marker to your knowledge level in the subject.
  • Shows commitment to getting the certification
  • Shows you can at least learn
  • Adds to the resources of the holder, may not know the answer but will know where to look.
  • Vendor benefits from having certified people on staff.

And the flip side of the coin, the cons

  • You knew enough at one point to pass the exam which doesn’t mean you know it now
  • Certifications are not as strong unless backed up by experience (the paper MCSE scenario)
  • Brain dumps, did you get your certification on your merit or with a little help of insider knowledge
  • Certification is sometimes used as the end all and be all of recruitment.
  • The testing process is sometimes not inline with real world situations
  • Cost and does not always guarantee a job

So its like anything really, there are good and bad sides to it. If you think differently or have more to add please leave a comment


John Lockwood said...

I recently started a discussion on LinkedIn, and one gentleman chimed in with a story about a kid who was certified but couldn't code at all. He finished it by contrasting himself, saying, "I'm experienced, and I have Google, and I have friends." My response was that I'm experienced, I have google, I have friends, and once I'm certified I'll have that, too.

I still haven't taken my first test, and I'm getting very busy with other work, but I look at certification as a way to get past gatekeepers who may be too dumb to evaluate me as a programmer other than by checking the "certified" box (thereby letting me interview with the real programmers). Also, it's a way to build breadth, where programming usually is simply a narrow focus on what you need for the task at hand.

Unknown said...

Hi John

Some good points there. Do you have the link for that discussion?

One of the main problems that any certification process will have is pen testing, like your gentleman's example. Its easier with infrastructure exams to stop this with virtual environments. Unfortunately its difficult in programming as you can always ensure the results without actually doing it and its harder to verify it at the end to ensure an instant result.

John Lockwood said...

Sorry, no, I don't have the link. It was a little while ago in the .NET Developers group. I think when I gave my answer things kind of died down -- I have that effect sometimes! :)

Dave Beck said...

As someone who has had a previous life as a Windows Admin and passed several (but not all) of the MCSE exams back in the Windows 2000 days and has now been doing development for about 9 years, I I have concluded that these certifications are fairly meaningless in terms of determining whether or not a person can handle the tasks expected of them in a position they are being considered for.

In both the MCSE and MCAD/MCSD realm, my feeling is that the training and test questions are quite out of sync with the average daily ins and outs of a Windows admin or a professional .Net developer. They go deep and detailed into concepts and areas that, in my experience, are rarely if ever even a concern, let alone a daily priority.

Certainly there are roles in enterprise organizations where this stuff may come more into play, but in fact I think it is quite rare.

Now that I am a senior person in charge of hiring other developers and also working with the MCSE crowd from the other side on infrastructure issues, it becomes even more clear to me that these certifications will almost never be a good indicator of a candidate's potential in the real world because we spend our days pondering and working with business logic and/or user interfaces which get little to no coverage in the certification curriculum which instead seem focused on super low-level concepts that nobody I have talked to ever gets into.

That said, I am still considering the dev certification pretty much for the reason already listed - it gets you in the door and may earn you a little bit more money along the way.

Aside from that, it comes off to me a lot like spending 3 years studying Japanese (which I did) to prepare me for a job in Germany (which I didn't - but the Japanese has not come in very handy regardless...).

Unknown said...

Hi Dave

Certainly agree with you on some points there. Personally I felt that the testing process was out of sync when I did my MCSD because of the questions that dealt with system design. It was only ever MS products never anything else.

What I find is that someone who is certified will know where to look when seeing a problem they have never encountered before. Tho there are some when certified who do not add to their knowledge and rest on their laurels.

The issue whereby either the wrong stuff is tested or seems out of sync is that the more you get into a product the more you use the quick shortcuts or in my case start just typing and using the intellisense functions. I know my click rate on windows is getting lower everyday due to me finding new shortcuts.

And the issue is also based on how many SME's they get to help with the blueprinting of the exam which gets feedback on how important certain aspects of the exam topics are to them. So for a hardcore web dev, using the UI may be low on the scale whereas an intermediate developer may see it as essential.

Anonymous said...

Im a bit more pro than against certification ... Im about to talk about the cons : the first point was that certified people don't know right now the subject wich is not always true when you get for example the MCPD by developping for a couple of years before get it ( we keep knowledge about a technology when we practice it for a long time ) .. the second point was a bout cheating ( which not all people do it )... the fourth point was about the real world against the tests.. I would say that it depends on the type of certification and the aims of it... Novice developers usualy use MCTS to get involved in the technology while MCPD needs alot more technical practice around all the environnement and MCM needs both technical knowledge and practice... So in the end I would say that people have to know the purpose of the certification and whether they need to have it or not with of course being honest :)