There are so many different certificates that very few can understand them. Today we will talk about obtaining a certificate of the highest level, as well as the path to this. And what is most interesting - one of those who passed this certification will tell about it. Look under the cat!
I give the word to the author.')
Hi, Habr! My name is Valery Samoilov and I am a leading developer in one IT-company. My main specialization is CAD / CAM / PDM and AEC / BIM systems. For more than 10 years I have been working as an engineer and application programmer with AutoCAD, SolidWorks, Inventor, Revit systems. I know C ++, Qt and lately I have been writing a lot in C #.
I recently passed the exams for MCSD status and want to share my experience.
What for
I sat, did not touch anyone, wrote the code, and then suddenly found out that the company announced a set of volunteers to take exams for Microsoft Gold status.
Our company already has a Microsoft partner status with a Silver competency. This gives us certain privileges: 25 software licenses for development, a loan amount for using Azure and other useful things. Gold status will allow us to get up to 100 licenses and increase the amount on Azure. Not to mention the fact that the Gold status sounds solid. The company pays for volunteers to pass the exams, and to the certified specialists provides different buns.
What do certificates give to an ordinary developer? Some consider certificates useless and even rationally justify it. In some ways they are right, because a programmer without a certificate is just like a programmer with a certificate, only without a certificate.
I do not share this point of view. In our daily work, we use far from all the possibilities of a particular language or technology. Preparation for the exam allows you to better study the tools used, as well as to master at least at the basic level new ones. The certificate itself confirms that you understand this area. In addition, most exams are conducted in English, and this is a good reason to expand and deepen the reading skills of English-language technical literature. Therefore, I recommend to choose the exam in English, even for those cases where there is a Russian version.
How to prepare
To go from abstract thinking “It would be nice to get a certificate” to practice, I got acquainted with the exam program, assessed my strength and made a plan of preparation. Yes, as in any other serious business plan steers.
The exam program is on the Microsoft website. The program is often updated, so in the process of preparation, it is advisable sometimes to view it, otherwise miss the important. This is especially true for Azure exams.
A preliminary exam date can be assigned when viewing the program. Orient will help the names of topics. I appointed a specific date and time for the exam in three to five days when I realized that I was ready.
To prepare for the exams, I allocated 1-2 hours on weekdays and 3-4 hours on weekends. Not every day it turned out to be prepared, but I strove for these indicators. Remember, planning is not only time, but also accounting and control. Therefore, mark key points for each exam topic and track progress. I used Trello for planning because of the convenient system of cards and lists.
Examinations consist of three types of questions:
The usual questions. This type of questions is known to everyone who has ever passed the exam in a test form: a task, a question, answer options. Choose one or more correct options. The required number of options is indicated in the question description. In the block of common questions, you can move freely and change your answers.
Serial issues. The same question is repeated 2-4 times in a row. The question contains the conditions, the problem and the proposed solution. Answer if the solution is appropriate (yes / no). It is impossible to return to the answered question, as answered - so answered.
Case study. A description of the task (Background), Business Requirements, Technical Requirements, code sections. The problem is given several questions (come across and serial). The questions correspond to the context of the requirements, sometimes it is directly stated in the requirements what to do, sometimes it is necessary to analyze what they want from you. In one exam, as a rule, several Case Studies. The skill of working with TZ and the customer is useful in solving such problems.
Examples of questions are available
here (Exam formats and question types).
Where and how to take
You can take the exam in the
Pearson VUE testing center or remotely from your home / work computer. I prefer to pass in person at the testing center. It mobilizes. You are left alone with the computer - now either you are his or he is you.
You can pay for the exam directly at the testing center or on the Microsoft website. Microsoft is cheaper because they offer
special deals with discounts. For example, until September 30, the offer "exam + retake" is valid at a discount.
It is advisable to arrive at the testing center at least 15–20 minutes before the appointed time. So, without haste, you will go through all the necessary formalities: fill out a questionnaire and take a photo. And there will be time to focus on the main goal - the exam.
Before the exam, personal items, except for a passport, must be handed over to the safe - nothing should be in your pockets. You will be given only a sheet of paper with a marker and sit down at the computer.
I passed all the exams in English. You can take Azure exams in Russian, but this is unworthy of a real samurai. And MSDN is useful in English: machine translation into Russian, despite the success of Machine Learning, to put it mildly leaves much to be desired.
If you have firmly decided to get a certificate and for the sake of this you are ready to endure the preparation and passing of exams, then all you have to do is to pack up and take three decisive steps to the cherished MCSD. Below I will talk about my experience of passing this path.
Step 1. MCP
At the beginning of the journey to MCSD is exam 70-483 Programming in C #. To prepare for it, I studied
Exam Ref 70-483: Programming in C # and reread an excellent CLR book via C # by Jeffrey Richter. The exam was pretty straightforward. I think that a programmer who has two C # developments over the course of a year will pass it without problems.

The main difficulty of this exam is that it includes the full scope of the language. Few people use C # 100% in their work. During the preparation I paid special attention to the gaps in knowledge, and Exam Ref. This is one of the most popular exams, the network contains a detailed description of the preparation process and the personal experience of those who passed (for example,
here ). In the exam one section (I had 50 questions), you can return to the questions. The case when one question from the test contains the answer to another is not a joke, I had it.
After successfully passing the first exam of the 70-XXX series, a
Microsoft Certified Professional certificate is issued. Many people stop at this, but this is not about me. Took a tug, do not say that not a lot!
Step 2. MCSA
So, the first exam is passed. What's next? And then you make a choice: pass
70-357 Developing Mobile Apps (this is about UWP, not Xamarin, as one might think) or
70-486 Developing ASP.NET MVC Web Applications .
I chose 70-357, because I didn’t develop for the web, and UWP is much closer to desktop applications I know well. Plus, in the exam program, I met familiar WPF and MVVM abbreviations.

The main problem of this exam is the almost complete absence of systematic teaching materials (there are no sensible books, Exam Ref is also absent). Saves a free MSDN with a bunch of articles on the topics of the exam and the official
Practice Test (for some money). I took the Practice Test and did not regret it - the questions and tasks give a good idea of ​​what you will have to face in the exam. But, of course, do not expect that the questions from the test will be on a real exam (perhaps some will be similar).
The exam itself is structurally much more difficult than 70-486: serial questions and case studies appear. They need to be ready. For example, I did not understand if I missed a couple of questions, but the rest were quite enough for success.
Now I think that it would be more correct to pass 70-486. 70-357 dead end - UWP exams for the next level are closed.
After passing the second exam, they issue a
Microsoft Certified Solutions Associate certificate. The title of Associate, as it were, hints that in order to recognize you as a real application developer, you need to still sweat.

Step 3. MCSD
As a final exam, Microsoft offers quite a few options. Eyes scatter. But as soon as you look closely, it becomes clear that only three of them have a prospect:
- 70-487 Developing Microsoft Azure and Web Services (as the natural continuation of exam 70-486);
- 70-532 Developing Microsoft Azure Solutions ;
- 70-535 Architecting Microsoft Azure Solutions .
From the list, I immediately threw 70-487 (web development is still not my fad) and 70-535 (decided it was too early). Thus, there was only one exam left for which I began to prepare.
Up to this point, I had a vague idea about cloud technologies, but then it turned out that, according to the exam makers, I had to equally well configure virtual machines using PowerShell scripts, deploy containers, understand SQL and NoSQL databases, and, of course, write web applications - and mobile- using Azure. Well, I thought, this is a reason to learn something new. It is necessary, at least sometimes, to look out of the cozy world of desktop CAD and CAM systems, especially since cloud technologies are used to their fullest extent.
Armed with a free Azure account, the newest version of
Exam Ref 70-532 Developing Microsoft Azure Solutions and Practice Test , I started to prepare. Azure account was attached $ 200 on the account, but with a limited "shelf life" - 30 days). It is very convenient, because you can [almost] not restrain yourself in experiments when studying the exam topics.
The main tool for preparation, as for the previous exam, was MSDN. Exam Ref and Practice Test - this is a good help, of course, but for their productive use requires basic knowledge, which I lacked. But most importantly, I could immediately try everything live on the battle server.
Preparation took about two months. This time, instead of the approach “I came, I saw, I won”, I showed reasonable caution - it is still dangerous to take an exam on topics that I hadn't had the slightest idea three months ago. Just for the Azure exams there was a campaign - “exam + retake + practice test” for the price of one exam.
And caution was justified. For the first time, something went wrong: 13 points were not enough.
In the results of the failed exam they write in which topics you are the worst of all. I gathered, analyzed the errors and made the second time as it should

The MCSD certificate is formally unlimited. But every year it can be updated by passing one of the exams to keep knowledge up to date.
Results
Was it worth it? I have only one conclusion - definitely worth it.
The path was not easy, but the more difficult the battle, the sweeter the victory. I filled in the gaps and systematized my knowledge of C # and UWP, I learned a lot about Azure-based cloud technologies, and the company got one step closer to the cherished Gold status.
All good, new knowledge and successful exams!
about the author

Valery Samoilov is a leading developer at
Rubius . The main specialization is CAD / CAM / PDM and AEC / BIM systems. More than 10 years working as an engineer and application programmer with AutoCAD, SolidWorks, Inventor, Revit.