I’m so excited, because I just passed the 70-487 exam, “Developing Microsoft Azure and Web Services”. That means I have earned the designation of “Microsoft Certified Solutions Developer: Web Applications”. It’s been over two years since I started studying for my first exam, with a break in the middle. So, I am really proud of this achievement, and I think it really validates my experience.
This was by far the hardest exam I have taken. The questions were a little different than the other exams, but I don’t want to violate the NDA by explaining what was different. I feel that in order to pass, you really need to have experience working with the technologies. The last two years have been critical in gaining that experience. I already had some solid experience building RESTful API’s with MVC, and I had done some basic WCF to support Silverlight. But, over the last two years, I’ve spent a lot more time with WebAPI, and using WCF in the service layer. Similarly, I was solid with ADO.NET, but I had been avoiding Entity Framework on purpose. I was never comfortable that EF wouldn’t clobber a finely tuned, secure database. Fast forward, and a few years of EF has been good for me. Regarding NuGet, you can’t be a developer anymore without knowing how to consume packages with NuGet. But, the exam validates that you know how to host a NuGet feed — not a very common requirement unless you’re in a big shop. Deployment is another part of the exam. You have to know Web Deploy — both the wizard, the command line, and deployment packages. This is an area in which I picked up a few new tricks — the real value of certification. Finally, you have to have some background knowledge with Azure. I am very, very critical of the exam in this regard.
Finding good study guides is a challenge. When I began preparing, the exam was brand new, and there was no book. So, I actually waited a few months for Amazon to deliver the text. When I saw it, I knew I wasn’t ready. After some more hands-on experience, I came back to the exam. I would suggest starting with the Microsoft Virtual Academy Jump Start. MVA is such a great resource, but don’t expect that to fully prepare you. It will give you a great overview of the road ahead. You need the book, which is from the ExamRef series. I am lukewarm on the book, not because of the Author. Rather, since the exam covers such a broad range of objectives, it must be hard to put together a cohesive text. No matter, it’s the only book and you’ll need it. Next, most people use a practice test from MeasureUp. I can’t stress enough how disappointed I am with this particular practice test. If you are nailing that practice exam, in certification mode, don’t be fooled into thinking that you are ready to pass. Towards the end of my preparation, I turned to Pluralsight. They do not have a single class to prepare you, but they do have a 70-487 playlist. It’s so long that you need to pick the classes that target your relative weaknesses. The best preparation is production experience with these technologies. If you do that, the rest will be easy.
Poor Azure Placement
I’m going to step out of line, and complain about the way Microsoft positions Azure in this exam. All of the other technologies fit together nicely when you build a web application on the Microsoft stack. But, hosting in Azure in another thing entirely. Not only is Azure constantly changing — much faster than the exam — but it would take a whole exam to really validate one’s knowledge. Instead, it feels like Microsoft just cherry-picked a few random features and put them in the objectives. I feel like Azure should be removed from the exam entirely. The objectives are already too broad. For developers who ARE working with Azure, there is a whole new certification for that. In those exams, Microsoft can really dig down. Don’t clutter the 70-487 by sprinkling a few random Azure objectives.
Unlike some people, I am not hooked on certification. I’m hooked on making money for me and my employer. I don’t see another exam in the near future. Down the road, I could continue the SQL Server certification track, because I really enjoy the physical and logical challenges in database development. But, currently we’re not doing any BI or data warehousing, so that exam is off the table. If the company pivots from AWS to Azure, and we made a strong push to leverage that platform, I would absolutely get involved with the new Azure certification track. Until then, I’ll just be happy that I achieved a significant career goal.