Rakesh Gupta is a four-time Salesforce MVP and editor at Automation Champion, and has kindly provided the following tips on how to be a ruthlessly efficient Salesforce Architect. He thinks that if you aren’t spending 5 hours per week learning, you’re being irresponsible!
Known as the 5-hour Rule, I recently stumbled on it on Social Media. How interesting, I thought, for I’ve been following this rule for years!
Being in the Salesforce ecosystem, I looked around. And saw that many ‘Ohanians’ seem to be doing the same.
Since Salesforce launched Trailhead (an online learning platform), many people have been attracted to Salesforce as a career. Based on my observation of feeds on social media alone, the number of people getting certified has ballooned compared to the 2007-2012 timeframe. Expansion of Salesforce’s ecosystem has been a boon for its Partners, Consultants, Talent Acquisition firms, Administrators, Architects, and Developers!
The aforementioned group may be diverse in their roles and skill sets, but they all have one goal in common—career growth! Just in the past few years, Salesforce added Einstein Analytics, Artificial Intelligence, Marketing Automation, Lightning Component, Lightning Flow, etc. to its quiver. This means that if you are not upgrading your skill sets, or knowledge, on an ongoing basis, you are falling behind in the game!
When this thought crossed my mind, I could not help but write a blog on the importance of 5-hour Rule to entice all of you to jump on the bandwagon! It won’t only enable you to stay ahead of the curve but you’ll also notice many doors—and new opportunities—opening up along the path of your career growth. So why not give it a shot and embrace the 5-hour Rule!
Learning opportunities for Salesforce Architects
Great to know that you are in! The next biggest question you may have is ‘how can I keep learning’? Well, know that I am with you as your guide and mentor!
So, let me start with few recommendations:
(I) Leverage Trailhead as much as possible;
(II) Subscribe to blogs like automationchampion.com. This will keep you updated on new things in the Salesforce ecosystem;
(III) Follow Salesforce influencers and MVPs on social media; and, most importantly;
(IV) Do hands-on exercises in your developer Org whenever you learn a new concept. This will build your confidence and enable you to become a Salesforce Pro!
At times, I come across a poorly designed Salesforce Org., and am saddened. The Salesforce platform is not a silo and should not be treated as one! It is truly an ecosystem that collaborates with many other systems and apps.
Let us test this. Comb carefully through the following concepts and it will contribute towards enhancing your Salesforce Knowledge repertoire:
1. Listen, and understand, your customers’ requirements and needs—be they spoken or unspoken!
As a Salesforce Architect, the first thing you must develop is an ability to listen. Listen to your customers and team members, and understand their spoken and unspoken requirements. This tack has immensely helped me in assuring my customers and team members that they are being understood. Half the battle is won right there!
2. Consider platform limits while designing
Unfortunately, few architects take time to understand limits of the Salesforce Platform when designing a solution. For example, while working on Process Builder, one can write 20 processes on one object. This solution may work with small set of data, but when the org grows and you now have millions of records, users might get CPU time limit or SOQL or DML exception error.
Once you know and understand the limitations of the platform, you will design a better solution by using two or three processes with Lightning Flow instead of a single Process Builder.
3. Defer sharing calculations
If you are changing Organization Wide Default (OWD) of an object—from Private to Public Read Only—your changes take effect after the recalculation is run. Recalculation may take few seconds to several hours, depending on data volume and customization in your Salesforce organization. If an Administrator changes a user’s role, Salesforce will run all sharing rules.
For each database update, it has to recalculate all access rights and sharing rules. If an org has lots of accounts and other related records then it may take a long time. If the recalculation runs in the background, Salesforce doesn’t allow anyone to create a new sharing rule or modify any security settings, including modifying the record.
If you want to resolve such record lock then you have to raise a case with Salesforce support and request them to enable Defer Sharing Calculations. Defer Sharing Calculations defers automatic sharing calculations—it means, if you have updated user hierarchy, groups, sharing rules, territory hierarchy, user roles, team membership, or ownership of records, Salesforce will not run background sharing recalculation job automatically.
Defer Sharing Calculations is very helpful when you are working in an org with Large data volume (LDV). By deferring sharing calculations temporarily, you can make the change and then have the sharing calculations happen all at once.
Interested in learning how becoming a Salesforce Architect will impact your earning potential? Download our independent Salesforce salary survey to find out. Spoiler alert: it’s good news.
4. Think twice about Data Storage
Data plays a critical role in analytics. It helps in understanding customer behavior and selling more products and services to them based on that understanding. But remember, Salesforce has limits on storage—you cannot save unlimited records! Data loss may result if you cross the limit.
To avoid the bruise, you will have to buy additional data storage. This is where the 5-hour a week mantra may come handy—learn and understand the available options! In this case, you could consider saving your precious data in a third-party system, like Amazon redshift, Heroku etc.
You can use third-party servers and then use API to bring your data in Salesforce. With that said, always make sure to create data archiving and purging process for each project.
5. Custom permission is your friend
When designing a system, you must think about scalable solutions—one that accommodates growth of your organization. For example, to bypass an Apex trigger for a set of users from the same profile, it is best practice to use custom permission instead of hardcoding the users’ Ids or usernames.
Using custom permission (assigned to users by using Permission set), you can easily assign custom permission to users and then bypass Validation rule, Process Builder or Apex triggers.
6. Take the advantages of field indexing
While working on Large Data Volume, your SOQL query may take longer to execute, especially when it runs on non-indexed fields. Salesforce supports custom indexes to speed up your SOQL queries—contact Salesforce Customer Support to add custom indexes on fields. By default, Salesforce indexes Primary keys, Foreign Keys, Audit Dates and Custom External ID fields.
If you want to add indexing on other fields, you can use custom index. Both standard and custom fields support Custom indexes, but the exceptions are multi-select picklists, currency, text area (rich), text area (long), non-deterministic formula fields, and binary fields. Indexing fields will help you to optimize your SOQL query.
7. Skinny table makes life easier
Having a data management strategy during every implementation can help you to ensure peak performance, even if your organization has ample storage in Salesforce or does not anticipate significant data growth.
Salesforce creates skinny tables to organize frequently used fields in one place, and to avoid joins. As a result, it keeps skinny tables in sync with their source tables when the source tables are modified.
Salesforce maintains a separate table—at the database level—for each standard and custom field. The preceding screen shot shows an example of skinny tables that would render peak performance.
Having read the article thus far, you’ve already started to embrace the 5-hour rule! Continue with your journey—learn new concepts and start applying them by designing the most-efficient solutions to meet your customers’ spoken and unspoken requirements and needs. Earn their trust one step at a time, and do so by always staying ahead of the curve with the 5-hour Rule!
Rakesh Gupta is a 4x Salesforce MVP and editor at Automation Champion. As a Salesforce influencer, he is dedicated to helping Salesforce professionals reach the next stage of their career through education and certification.