There’s no way around the fact that pursuing a .NET certification, either the Microsoft Certified Application Developer (MCAD) or the Microsoft Certified Solutions Developer (MCSD), will mean hours and hours of hard work. The MCAD alone requires three tests, two in your language path (VB.NET or C#) and one elective. The MCSD requires five tests, three in your language path, the 70-300 Architecture test, and one elective.

No matter which certification you decide to pursue, prior planning will go a long way to making the certs a manageable goal—whether you have years of experience or you’re just starting your programming career.

Starting from the same place: MCAD
Because the .NET technology is so new, only 15 to 18 months old, not many programmers have lots of experience in .NET at this point, said Ed Tittel, contributing editor to Certification Magazine. The MCAD is all anybody can claim now, as it’s the only cert that’s really complete as far as requirements and exams.

The MCSD is just not cooked yet, he said. For example, the 70-300 architecture exam has just come out of beta. “What I’m recommending for people who are really hot to trot is to go after the MCAD right now, wait for the information on 70-300 to become available, and as soon as its available, you can start pursuing it.”

Dian Schaffhauser, editorial director for Microsoft Certified Professional Magazine, emphasized the importance of experience. “The MCAD can be considered a stepping-stone to the MCSD,” she said. “The difference: solution analysis and design experience. Nobody can achieve an MCSD on .NET without that. The objectives of exam 70-300 are so broad that you need a great deal of experience in many different areas to get through it.”

Schaffhauser recommended that people with one or two years of programming experience should focus on the MCAD. If you’ve spent years in the field, go after MCSD.

Is .NET good for new programmers?
If you haven’t had much programming experience, .NET is still a doable technology for a beginning programmer Schaffhauser said.

“Newbies have one advantage: It’s all new to them so nothing is more boggling than anything else.” They may start out in their professions building distributed transactions and believe that applications have always worked like that. No legacy attitudes to get in the way, she said.

But is blind innocence enough? According to Cushing Anderson, IDC’s program director for learning services research, the answer is no.

Cushing said that new programmers need solid coding experience in an established development environment. He added that .NET probably shouldn’t be the first technology new programmers learn but instead should become a future goal. By learning another development environment first, Cushing said, new programmers will gain experience and a skill set that will transfer to other application environments while providing an existing market for that skill set.

With some understanding of other development environments under their belts, new programmers can begin taking .NET classes, Cushing suggested. “Getting conformable with .NET so you can talk about it, so that you understand the issues, so you can rule it out as a tactic or an approach to a project, is very helpful, but you don’t need to be certified in it to get that level of comfort,” he said.

Certification Magazine‘s Tittel agreed. “I would strongly urge somebody to consider tackling object-oriented programming as one of two essential threads before jumping into .NET,” he said. “The other one would be basic working knowledge of XML syntax and structure.”

Table A outlines a certification path for both new and experienced programmers.
Table A

Strategies for experienced
Strategies for new programmers/
career changers

• Begin taking classes/studying .NET language path (VB .NET or C#)
• Begin taking MCAD exams including elective that will transfer to MCSD
• Save the 70-300 for last exam

• Learn about Object-Oriented programming and XML skills
• Get solid coding experience in another established development environment
• Begin taking classes/studying .NET language path (VB .NET or C#)
• Begin pursuit of MCAD

The 70-300 dilemma
Just out of beta, the last requirement of the .NET MCSD is exam 70-300, Analyzing Requirements and Defining .NET Solution Architectures. Because it is so new, no support or training materials are available for this test.

Tittel suggested saving this test for last. “The architecture exam has always had the reputation as being the most difficult developer exam. I’m guessing that the next generation is not going to go in the direction of being easier but rather the direction of being harder in terms of increased number of subjects and technologies and topics that are going to have to be mastered for it.”

A three- to six-month learning curve for this test is not out of the question, according to Tittel.

“My advice would be to save that exam for last anyway, because by studying for the other exams, you learn bits and pieces of what you need for the architecture exam,” he said.