Let us start our Journey with few quotes for insights and inspiration:
- Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.
- Any fool can write codes that a computer can understand. Good programmers write code that humans can understand.
- The only source of knowledge is experience – Albert Einstein.
More often than not, I meet visibly frustrated Certified Platform Dev 1 and Platform App Builder Users. Their plight and pain points – I have handful of Salesforce Developer Certifications then, why is it difficult to attract recruiters? Why do my screening interviews end up in a dead-end? At times, when I do make it to the actual interview, why do I fail to get a job offer?
I am dismayed by the predicaments of talented Developers. However, my recommendations are difficult to package in sound bites. This blog is an attempt to usher a paradigm shift and empower Developers to creatively decode their Salesforce Developer Journey.
Bringing Back Fun in Fundamentals:
Programming requires two things – (1) Design Logic – Pseudocode; and (2) transforming the logic into a programming language – in that order! Road blocks of frustrations are too familiar to us since our school days – Then, the target was to get a Diploma or a Degree. Unfortunately, things have not changed much – for now, the stampede is towards getting Certified. There in lie the seeds of frustration – ‘Certified Developers’ get knocked off during interviews because they are unable to develop a Pseudocode ‘on their feet’. In other words, they are unable to articulate and reason well, during an interview, about how they would solve a given requirement.
Undue focus on getting Certified comes at the expense of devoting necessary gestational apprenticeship to become a proficient writer of Pseudocodes. Ironically, the key to getting a job is to showcase your expertise in doing just that! Suffice to mention here that, Salesforce Developer Forum and Stack Exchange, are one of the best platforms, to learn from, and showcase your creative ability to seamlessly develop Pseudocodes to solve a problem effectively and efficiently! Many hiring managers prowl these sites, either to get help from Salesforce pros to solve the problems that they are currently facing, or to hire! Indeed, I got my first Salesforce work after helping a hiring manager to solve a problem!
A Mentor’s Perspective on Approaches Towards Mastery:
Mastery of Fundamentals is achieved when mental is having fun! One of the captivating ways to train your mind – that is, to develop expertise in logical thinking – is to solve at least one Sudoku puzzle daily! Sudoku will help you to sharpen your brain and improve your thinking ability. Disbelief? If so then, be inspired by a true story of one of my students – I M Possible.
Inspired but Unconvinced?
Wait a minute! You ask! – How is Sudoku and Apex related?
Your question is fair. However, let me take a crack at it by asking you a counter question – If you have a rusted wrench, and someone asks you to paint it, what will your first step be? Think on your feet!
Remove the rust, of course! Well, Sudoku will do just that! Since the school days, our minds have been rusted because our focus, almost always, has been on collecting Diplomas, Degrees and Certificates rather than develop our faculties to think critically. So let, solving Sudoku puzzles daily, be a starting point of your Salesforce Developer Journey!
Based on our discussion thus far, and undergoing frustration for not landing on a coveted job despite multiple certifications, I hope you are convinced that unless you achieve expertise in developing Pseudocodes, and showcase it actively by partaking in discussions on various Salesforce Forums, Certification(s) have almost zero value.
On to Becoming a Seasoned Developer – Before and/or After Acing Certification(s):
Note: – Only start the Journey if you are willing and able to invest at least six to seven months in preparing for your Salesforce Platform Dev I Certification Exam – Read no further if you expect me to share with you any shortcuts – because there are none!
- Sharpen your logical thinking!
- Sign-up for a Developer Org.
- Download Apex Workbook – Work through it thoroughly!
- Trailhead! Trailhead! Trailhead!
- Join Local Developer User Groups.
- Work through real-world business scenarios from Salesforce Developer Forum or Stack Exchange.
- Subscribe to Developer Blogs and Piggyback on Salesforce pros!
- Do not focus on appearing for Developer Certification(s) until and unless you have mastered the art of writing Pseudocodes and achieved proficiency in translating it into Apex.
If you diligently follow my guidance, you will not only become a Certified Salesforce Developer; but, chances are, recruiters will be knocking at your door shortly! So, roll up your sleeves and let us hit the road running!
Salesforce offers tons of resources, documentation, white papers, etc. for a newbie who wants to become a Developer. Indeed, newbies are overwhelmed by the plethora of information available. So, let us get started on our Journey step-by-step. And, of course, welcome to Salesforce Ohana!
Sharpen Your Logical Thinking!
Difficult to exaggerate this point! Most training classes will not help you to build your logical abilities; the best part is, ONLY YOU CAN DO THAT! Let us tackle a use case – you want to develop an application that will help people to better manage their personal and work emails.
Now, the first thing you have to do is to design, or add your vision to, the application. Once done, you can hire few developers to do the rest!
People often ask me, what is required to learn Apex? My simple answer to them is – your ability to build logic! This is not only based on my experience but, also that of my friends and mentees – many of whom did not have any programming background; yet, by sharpening their abilities to develop models logically – i.e., develop Pseudocodes – almost on the fly – they have gone on to become great Developers.
First of all, therefore, your focus should be on learning basics of Salesforce development. For next few months, develop expertise in writing Pseudocode, Apex programming, and Lightning Components; tempting albeit, refrain from trying to find short cuts to crack Salesforce Platform Dev I Certification! For, once you have enough hands-on experience, you can easily crack any Developer Certification(s).
Download Apex Workbook – Work through it thoroughly!
Do not even think of appearing for the Platform Dev I Certification Exam until you thoroughly go over the Apex Workbook and complete all the instructions mentioned in this article – including Trailhead modules – and spending time on the Salesforce Developer Forum or Stack Exchange.
Go through Apex Workbook in small bites at a time, on a daily basis, and you should be able to complete the Apex workbook within a month. In order for you to complete the exercises, you will need to sign-up for a Developer Org. Bottom line – become a hands-on wizard! Practice! Practice! Practice!
There is an Apex Developer Guide too – however, stay away from it, for now!Apex Developer Guide contains concepts that you may not be able to understand at this point. So, for now, stick to mastering Apex Workbook. Use Wunderlist (a task management app) to set your Apex learning path, as shown in this article An Unconventional Path to Getting Salesforce Administrator Certification!.
Trailhead! Trailhead! Trailhead!
For a soft landing, make Trailhead your second entry point into Salesforce! What? Already visited Trailhead? Are overwhelmed with tons of Trails, Projects, and Modules in Trailhead? Fear not!
One of the better ways to approach Trailhead is to find all the relevant Developer related Trails (by using filters, as shown in the preceding screenshot – Solve Beginner Trail of Developer module) and Projects and list them down in an Excel spreadsheet, or use Wunderlist (my favorite). Then, be sure to make a checklist of the daily routine! Adding all your tasks in a checklist, and setting a reminder, will help you to complete your tasks on a regular basis.
Be prepared! Despite all your efforts, at times, you may fail to follow the set schedule. Be patient with yourself – this is a long journey! Dust yourself and carry on! Leverage all the tools at hand – checklists and reminders – to get you through inevitable frustrations and relapses.
Trailhead is a learning tool and not a badge counter! Therefore, refrain from approaching Trailhead with a mindset to increase the number of badge counts! Plan on completing one or two modules in a day. Take notes, revise notes, and practice the concepts on your Developer Org. If you follow the aforementioned advice, within a month or two, you will be able to complete all the Trails and Projects related to the basic development.
Developers Trails are a bit harder compared to Admin Trails, so be patient and work daily. If you struggle with completing an exercise, give it a second try – do not google and paste codes just to get the badge! In other words, do not cheat yourself!
If you work two or three hours a day, it will take you a month or two to complete all Developer related Trails and Projects.
Join Local Developer User Groups
Simultaneously, while going through the Apex Workbook and Trailhead, be sure to join local Developer user groups on the on Meetup.com and attend Meetups in person. It will help you to connect with local Developers and get a chance to interact with them. You can get their help to learn Apex or to solve some Salesforce related queries. Also, signup for the Developer related webinars that are frequently organized by Salesforce.com.
Subscribe to Developer Blogs and Piggyback on Salesforce pros!
Caveat – take a ‘Goldilocks Approach’ to Salesforce Developer Blogs such as – jitendrazaa.com, jeffdouglas.com, Sfdc99.com. These blogs are Developers’ goldmines; however, if not tapped wisely, they have a potential to turn into mine fields! Most of such blogs offer Salesforce Integration and other high-level stuff. At this point in your Journey, advance topics may confuse, or worse, intimidate you! Therefore, leverage these blogs sparingly and wisely!
Work Through Real-world Business Scenarios from Salesforce Developer Forum or Stack Exchange!
Congratulations! Having gone through the above steps have made you a Semi-Pro! Once you have basic knowledge of writing Pseudocode and Apex, the next step is to work through real-world business scenarios on a daily basis. Hop on to the Developer Forum or Stack Exchange and grab handful of real-world business scenarios and work through them in your Developer Org.
Let us work through one such scenario that I randomly grabbed from the Developer Forum:
Remember the first step – solve the problem in plain English (Pseudocode)! And, only then, write the code. Pseudocode is a simple way of writing programming code in English – it is not an actual programming language. It uses short phrases to spell out the logic on how one would solve a requirement before one actually creates codes in a specific language.
Below is the Pseudocode for the above business requirement:
Trigger on Contract If EndDate is changed Create a new opportunity
Now convert the aforementioned Pseudocode into Apex programming language. Then, try out the code in your Developer Org first. Do not try to follow Apex best practice from day one. Your goal, at this point, is to write a working trigger! Do this for next two to three months. Once you write handful of triggers on the same object, you will start getting errors! If you hit an error during runtime, try to explore it and you will learn many things while exploring the error!
If you get stuck, ask questions on the Sites and Forums! Carefully go over the solutions offered on these Sites and Forums by Salesforce Developer Pros! Then, go to your Developer Org. again and try it out! Think about a better way to solve the problems; solve it; and then, once you are confident, post it on the Sites and Forums!! There you go!
After three to four months, you will learn how to write Apex code that follows best practices, etc. Now is the time to do heavy lifting! Work through Apex Developer Guide next!!
Once you are done with Apex Developer Guide, and have been patiently and diligently writing Pseudocode, and practicing writing Apex codes in your Developer Org, you have ‘earned the right to sit on the table’ with Salesforce Developer Pros and answer questions on the Developer Forum. Be careful! Be real! Do not copy and paste answers from the web. Most novices make this mistake. If you fake your way into the Community, you will most certainly ruin your reputation, trust of others, and the prospect of any opportunities coming your way!
At this point, for the heck of it, appear for your Developer Certification(s). You will be surprised to know how easy it is to ace it!
Yes! I hear you! You are asking me loud and clear – Rakesh, who will give me a job without any experience? I am glad you asked! Because I was about to answer the question anyway!
Getting a job as a Salesforce Developer is very easy if you have years of experience. In absence of that, your best bet is to build a good, solid, reputation on the Developer Forum and Stack Exchange! As mentioned earlier, share your knowledge with the community – write a blog or quality content; DO NOT copy and paste from others blogs! If you follow the aforementioned suggestions, I am absolutely convinced, that you will be hounded by recruiters and hiring managers!
Becoming a Seasoned Developer is quite easy if you work every day with proper planning. Set your goals – at first, practice writing Pseudocodes and Apex programming two to three hours a day. Try to follow these best practice from day one – Naming convention of variables and classes, code indentation, proper comments. Other best practices you will learn eventually.
Follow the same approach for other Salesforce Certifications – like Platform Dev II or Platform App Builder Use Stack Exchange or Salesforce Developer Community to find real-world questions posted by customers and solve it in your Development Org.
The aforementioned approach is sustainable and lasting! It will be a life-changing experience. Enjoy the ride and I hope you mentor others once you have arrived!
* All product names, logos, and brands are property of their respective owners.