Why every Salesforce consultant should learn Apex?


Banner of male coding on computer


When I signed my contract with PwC in 2011, my job title said: “Salesforce consultant”. That same contract stated that the job entails giving pre sales demo’s, capturing business requirements and translating them into a realistic and actionable solution design, implement the Salesforce platform end to end and project management. That’s exactly what I’ve been doing the last couple of years, growing my expertise on the Salesforce platform, trying to become as Salesforce likes to call it: “implementation expert” by getting more certified.

For any implementation, it is your role as a consultant to know the out-of-the-box functionalities of the platform, using clicks to do customisations, and only turn over to a developer if all other options are not going to do the trick. However, by doing increasingly complex implementation projects, I had to work together with developers more frequently. Most of the time the story went like this:

  1. Product owner: “We want to archive all leads older than 2 years.”
  2. Me: “No point&click solution exists, we should look into writing code.”
  3. Me: talks to a developer, explaining the requirements in a bit more technical way
  4. Developer: puts on his headphones, does some magic
  5. BOOM! Old leads are being picked up every night and deleted

It always made me feel a bit jealous. These people type some stuff nobody can read, and all of a sudden they can do whatever they want with the platform! I wanted to be a magician as well… So at my next internal evaluation meeting, I asked PwC if I could free up some time and dive into development. Thankfully, they were nothing but supportive.


But… how?

So I started searching for online material to help me start from scratch. After all, I had no technical background. I vaguely remember having to write some easy calculator code at university. I don’t remember the programming language. I landed on David Liu’s (Salesforce MVP) website sfdc99.com pretty quickly, which was designed exactly for people like me. I explored all beginner tutorials on there. Meanwhile, I was also walking through trailhead. I’ve gathered all the relevant badges there, and finished with the Apex Specialist Super Badge. According to the documentation, that one should take 8-12 hours of work. It easily took me 24h.


Apex Specialist credentials


I felt ready to take a shot at the Platform Developer I exam, studied the remaining topics and passed it the first time.


What’s in it?

Passing an exam does not mean by any way that I consider myself a true developer now. But at least I have a grasp of the basics. It has already helped me in so many ways:

  1. Be more confident in front of the customer
  2. Understanding limits of the platform better
  3. Reading through existing code
  4. Debugging, even point&click things like process builder and flow
  5. Write anonymous blocks to test functionality or update data
  6. Giving yourself a new challenge, or as a colleague put it: “it’s you vs. the code”
  7. Knowing the magic is actually just a scheduled Apex batch!

I firmly believe everyone without technical knowledge but with decent logical reasoning can code. I also believe everyone in the Salesforce ecosystem that is not pursuing a developer career should at least learn the basics of Apex like SOQL or bulkification. At the very least, it will make you realize those developers are just humans after all.


Robin de Bondt - Apex trailblazer


This article was written by Robin De Bondt.