Last week I passed the first part of the Salesforce Advanced Developer (501) Certification, which was a 69 question multiple choice exam that required a 73% to pass. I still have a programming assignment and essay questions that will come (much) later this fall before I am fully certified, but this was a certification that I felt pretty compelled to complete considering I felt like my experience working on the Salesforce platform the last few years made me quite familiar with the topics covered and it would be nice to validate that.
Reviewing the study guide (and many blogs written by those who have passed), I came across most of the general concepts that were covered. Some of the blogs I found valuable for preparation:
- Sara Morgan’s Class Notes
- Good overview, though might be a bit basic for seasoned developers
- Jeff Douglas – I Passed the Salesforce.com Certified Advanced Developer Exam – So Can You!
- Matt Lacey – Five Oh One Part One: The Advanced Developer Certification Exam
- Steven Herod – Helping you pass your 501 Advanced Developer Exam
- Even if you don’t actually do the exercise, make a mental checklist of all the things listed and ensure that you know how to do them and when/why they are used
- Cory Cowgill – Passing the Force.com Advanced Developer Exam
After taking the test, I’d have to say that someone who works with the platform day-in and day-out should get at least half of the questions right (with the caveat that they are doing things correctly) just by drawing for your experience. Although without extra preparation there were some aspects of the platform that I either had never gotten to use before or that I needed to brush up on to be completely confident that I could correctly answer questions about them.
Some of the more obvious things to know based on the aforementioned resources if you aren’t already intimately familiar with them:
- Know how to use the Force.com Migration Tool and Force.com IDE and what they are capable of
- Know the best practices of Apex to prevent hitting governor limits
- Know how to write unit tests
- Know how to write Apex Controllers and Extensions, what the constructors look like, and how Apex Controllers interact with Visualforce Pages
- Basic SOQL
- Team Development (and Development Lifecycle) best practices
In particular, the following were things that I paid careful attention to that I don’t work with every day:
- Inbound and Outbound Email Services
- Visualforce Page Templates and Visualforce Email Templates
- Custom Components
- Visualforce Action Tags
- Apex Annotations and Webservices
- Dynamic Apex
- Methods to access Schema
- Trigger and Visualforce Page execution orders
Remember that anything in the official study guide is fair game, so I would suggest that if you don’t have hands on experience that you at least go through some examples instead of just trying to memorize anything. If you come from a Java/C# background, you have a leg up in that you will be pretty familiar with the syntax, but I still wouldn’t advocate jumping into the test without some test development. I’m always pushing the Apex and Visualforce Force.com Workbooks as a great tool to jump into the programming side of the platform.
As many other bloggers have noted, if you simply read the Apex Developer Guide, Visualforce Developer Guide, Migration Tool Guide, and Development Lifecycle Guide, you will know everything asked on the test. Unfortunately that isn’t always possible, so ensuring that you have strong fundamentals on the platform and augmenting that with some of the pieces that you haven’t used before that are referenced above should help you pass the test. Worst case, you learn some new techniques and/or unveil some functionality that you can integrate in your code going forward!
For more information on the second part of the Advanced Developer certification, take a look at the followup blog post: Salesforce.com Advanced Developer (501) Programming Assignment & Essay.