Monday, November 5, 2007

Certifications (MCTS, MCPD, MCSD, MCAD, and so on)

Well, the question is, are certifications, such as MCSD, the new MCTS qualification, and the MCPD qualification worthwhile? Do they offer anything in the way of learning new things, and do the prove to the wider world that the qualified do indeed know more than the unqualified?

Personally I did an MCSD back in 2001, and at the time found the desktop and distributed parts to be a case of learning minute detail to be able to pass the exam. The exception, and useful parts were the "analysing requirements and defining solution architectures" exam, which was a real challenge, and meant to me that you really needed to know your stuff. Personally, I think it's a shame that that exam isn't still available.

Having passed the MCSD back in 2001 I gave myself 6 months off, after which I planned to start studying again. So, after a 6 month break that quickly turned into six years, I'm back again doing some certifications.

At first, whilst studying the MCTS exams, I found that most of it I already knew, just that the names had changed. However, I was gladly surprised to find that there was enough tested knowledge in there to make it worth my while studying for it.

I would recommend that the MCTS exams are aimed at your bog standard developer, so if like me, you've done that sort of thing for some time, you will probably not find it a huge challenge. That said, as mentioned earlier, I believe that there's enough coverage in there to allow you to learn new things, and improve your breadth of knowledge.

Will sitting these exams leads to more opportunities when looking for employment? Almost certainly, if it's between yourself and someone who doesn't have any certifications, I know which one I'd choose, all else being equal. That's the key, if you have the experience, this adds to it, if you do not, then I wouldn't expect it to really give you an all areas pass to a job. I do see more recently, employers asking for people with certifications as "highly regarded". Listed as mandatory though, are a whole bunch of other skills and experience that you must have, so that gives you some idea.

Then there are those people who get hold of answers to questions, and cheat the certifications, personally, I think that those people do denigrate the certifications, but as mentioned above, someone passing may get them through the door of the interview, but when asked questions, or asked to do something practically, those people are going to have a rather public fall.

One interesting thing that also happened. Whilst studying for the exam, the practice exam software crashed, it seemed, in the C# certification area, so I switched the language to VB.NET and started the exams again. What happened then was that I wasn't really all that aware that I had changed languages, as the knowledge required was more often than not, the same. I also tried that theory out with a C++.NET exam simulation from the CD, and found the same to be true again. That did impress me, and lead me to the question that really a lot of the exams are language agnostic, and the certification is more with the framework than with the language.

I hope this little article is of interest to you, and that you will leave me a couple of comments, as to what you think, and if you agree, or it helps to spur you on to doing the certifications.

Good luck!

2 comments:

Unknown said...

Hi Martin,

Thanks for a great article. I've been developing for about 13 years now, mostly Delphi, and over the past few years some C++. I'm in the situation now where I feel I need to update my skills (Delphi jobs are hard to find) and I've been in a bit of a quandry as to whether it's worth taking on an MCSD for C#.Net. Apart from the money it also goes against the self taught route that I've always taken in the past.
It made a nice change to read something constructive on the subject, it gets very frustrating looking for some decent input when all the forums seem to get taken over by idiots that think either 'it's Microsoft so it's crap' or 'good coders do it on their own' (which could be true in some aspects of their lives!). Initially the only question I wanted answering was 'do employers take notice of it?', I didn't think about the fact that it would just be good for me personally.
So, that said, you've persuaded me to have a go, it will be something that I've done for myself and if it improves my job prospects then that'll be a bonus.
Thanks again,
Julian Bolton

BTW : I use the same photo on my profiles...good choice.

Martin Platt said...

Julian,

I too started my career using Delphi, V1.0, which beat the pants off just about anything around. I also got out of using that language for the same reasons, that there were not that many jobs. I also found that integration between Delphi and Microsoft components at that time was a difficult process to undertake.
Hand on heart, the Microsoft certification route has been useful and enlightening, and whilst it is only one viewpoint, that viewpoint has been very useful on many an occasion. I would and do recommend it to people I meet, and people that work for me.
So how are you going with the certs? Have you finished them? How are you finding progress?
Thanks for leaving the comment, and my apologies for not answering sooner.

Martin.