At first glance, this seems like a fairly easy exam but that’s where the danger lies. This is why I decided to write a blog post to prevent other people from falling into the same trap. I have worked with Azure, WCF, Web API, Entity Framework, ADO.NET for my whole career (all 4 years of it + the time I worked with it in college, which makes it about 5 to 6 years). But I never actually learned the theory of these technologies, I just used them in reality. So it is almost certain that I have missed some details about these technologies that could be vital to the exam. For instance, when I started working with Entity Framework, the fourth or fifth edition was released with the introduction of the DbContext. It wasn’t until a few months ago that I ever actually had to fall back to the ObjectContext class, and according to the official preparation book, it seems this class does still get some coverage on the exam. Exam Ref 70-487 Developing Windows Azure and Web Services (MCSD) Unlike the official preparation book of 70-486, which was rubbish, this one is quite easy to read.
But if you do some research yourself on MSDN, you’ll notice they just copied whole paragraphs from it! No wonder they did because Microsoft’s documentation is excellent. Nonetheless, it is a good book to start with but I don’t believe you’ll pass if you just read this book (and especially if you’re new to the technologies). Anyway, as a way to prepare for the exam, I’ll take notes (i.e. copy/paste text from MSDN) and share them with you. Moreover, I have created a Github repository where you can find code samples that could be useful for you to understand certain concepts or behaviors. Next to the book and my links, there are other options such as:
- Fire Brand Training Preparation Guide: a lot of slides covering most of the exam topics in depth.
- Pluralsight: a good source for when you have heaps of them preparing for the exam. If you don’t have the time, you might want to skip the videos and stick to the book and my posts.
The outline of the exam is straightforward. There are five chapters:
- Part 1: Accessing Data
- Part 2: Entity Framework
- Part 3: WCF Services
- Part 4: Web API
- Part 5: Deployment
The objectives are organized quite nicely and it’s easy to keep an overview of where you are. First you’ll learn about data access techniques after which you’ll go into great detail on Entity Framework, WCF and Web API. The last part, I found, is slightly different because it focuses on deployment.
Allow me to recap the objectives for this exam, which you can find in greater detail here:
- Fundamentals of Entity Framework and some advanced features
- Describe the concepts of Web API and how to implement it
- Create and consume WCF services
- Deploy web apps
This is quite a wide angle. There are many topics and some of them are pretty detailed. I remember I struggled through WCF bindings while I skipped the part on Entity Framework entirely when I prepared for the exam. I’m certain you will have a similar experience where you seem to know a lot more (or lot less) about a topic than the others. I always assumed I knew WCF pretty well but man, was I wrong. But hey, that’s what these exams are for, right?
I prepared this document with a list of links for each subject which may come in handy if you want to learn more about the topic.
I’m pleased to announce that I passed the exam with a score of 873. And because this is the third exam in the MCSD Web Applications track, I am now also a certified Microsoft Certified Solutions Developer.
Of the three exams (70-483 Programming in C#, 70-486 ASP.NET MVC, 70-487 Azure & Web Service), I found this one to be the most difficult. There’s a number of reasons for that.
Not only does the exam cover a lot of different topics, some of the content has changed so much over the years it is difficult to keep track what the exam actually covers (I am looking at you Azure). Also, some of the questions were really low-quality and susceptible to various interpretations, which is what you don’t want in such exams.
Lastly, the details of the exam. Most professors and teachers taught me it’s not necessarily a good idea to remember everything by heart just for a certain test or exam because you tend to forget most of it pretty fast. For this exam, you do need to know manykeywords or elements by heart or you won’t make it – unless you have a lot of experience in the field, especially for WCF questions. That being said, I am not an expert in WCF so these questions were more difficult than Entity Framework and Web API, technologies I have worked with for a couple of years now.
However, if you have worked with the technologies before [extensively], studied for the exam and if you have a healthy dosis of problem solving skills (which you probably have – you’re a programmer after all), you could rule out many wrong answers just by using some common sense. So if you’re preparing for the exam, do it well! Take your time to study and don’t forget to try some samples yourself, it’s amazing how much you remember just by following some guy’s how-to tutorial!
You could use my preparation guide to get to the nitty gritty stuff where the preparation book doesn’t provide sufficient details. Also don’t forget to check out Chris Meyer’s post about this exam. Good luck with the exam!