Top 10 Lessons Learned with Salesforce Development
Every Salesforce developer can look back on their early career with this platform and conjure thousands of things they wish they knew before touching the keys. From the perspective of personal experience, here are the top 10 lessons learned with Salesforce development that every new developer should know.
Lesson #1: Mentorship
The importance of finding mentorship in any area of your life is essential. In the realm of development, this is certainly no exception. The best situation in this case would be finding a mentor outside of your current development environment. The reason being is there are various bad practices picked up in peer to peer Salesforce development training. Having a mentor serves as checks and balances for the quality of advice. It is too easy to stay within the team’s status quo, and not seek alternate resources to bring additional ideas to the table.
Lesson #2: Use Cases
Salesforce is always changing regarding platforms and services. Therefore, keeping up with these trends or changes is the most significant part of development. Knowing the different use cases that are relevant to your development will go a long way in the journey of creating correct solutions. Additionally, Salesforce is always adding solutions to make your development life easier. Therefore, staying up to date with these use cases will ultimately keep your solutions effective and relevant.
Lesson #3: Custom Code
Salesforce development has a quicker turnaround time than other platforms, which is one of the biggest development benefits. This excites us as developers, and makes us feel like we can provide solution after solution. However, this benefit can quickly turn into a challenge for new developers. In nearly any situation, reinventing the wheel is never the correct way, and Salesforce is no exception.
Many developers just want to dive into creating a solution and coding something out. As a Salesforce developer, you will certainly get plenty of opportunity for this. However, you never want to waste time or effort in the process. The Salesforce platform performs much of the work for you, and has been well tested. Therefore, it is always best practice to look into using those resources first. Additionally, there are many other services for integration, application exchanging, platforms and things of that nature that could replace the need for a fully custom solution.
The key takeaway: Always look at your resources and conditions where custom code is needed to move forward with development.
Lesson #4: Developer Additions
A developer edition is essentially a free personal instance of the Salesforce platform. When starting out with Salesforce, spending as much time as you can in this environment (and not in a real environment) is best practice. This is a great way to explore and educate yourself on the platform as a whole.
Of course, there are always sandbox (development) environments that can be refreshed from the production system. However, the developer editions provide various features that your environment may not have.
PRO TIP: Educate yourself as much as possible in this environment to be experienced enough to share ideas confidently.
Lesson #5: Governor Limits
The typical developer approach is to dive into a problem and start pounding keys. Since development is so rapid in Salesforce, this becomes even more prominent at times. Users are happy because development moves fast, and they are having fun creating custom solution after solution. User adoption is going up, and developers are learning new things along the way.
Unexpectedly, “that” day happens when you receive an email from a user saying they got an error using your custom solution. Upon research from this error, you read about governor limits within the platform. The most common limits a developer will encounter when first using the platform are:
- Too many SOQL queries
- Apex CPU time limit exceeded
- Maximum view state size limit (135 KB)
These are just a few examples of the many governor limits within the platform. They are most common if there has been no previous research in best Salesforce development practices. This will essentially halt development, and force developers to educate themselves on the Salesforce multi-tenant platform. Taking the time to understand the platform, its limits, and common design patterns will go a long way. Instead of diving in and learning as you go, take this first step to learn about governor limits to prevent future headaches for yourself and the user.
Lesson #6: Trailhead
We all need a starting point to learn, and everyone learns better in different environments. Some learn by reading directions, others by hands-on experience. With Trailhead, Salesforce has provided the best of both worlds. Additionally, they have put a great amount of content together, and are implementing playgrounds for the hands-on experience. Before starting any project, developers at least need to complete beginner courses on Trailhead.
Lesson #7: Development and Deployment
Most developers are familiar with the term “unit test“. In Salesforce, all APEX codes must have 75% code coverage or greater by test class to go to production. This may seem like a chore at first, and developers will likely put this off. However, with some experience, you will see the usefulness of these tests as you are developing rather than an afterthought.
Lesson #8: Declarative Tools
With the rise of Lightning (which is a whole separate conversation) declarative tools have become even more popular. These tools allow you to program for different situations using a point-and-click interface. Of course, there are limits and situations where these will not work. Never the less, learning when these tools can be used over a programmatic approach will improve efficiency, which is the ultimate goal.
Lesson #9: Developer Certification
The more experience and training you pick up on, the more you realize how much you can learn. Studying and obtaining at a minimum the Salesforce Platform Developer I certification, is a great way to ensure you know the Salesforce basics. From there, you can expand your skills and knowledge through additional training or certifications.
Lesson #10: Administrative Certification
Going back to training and ensuring you understand the tools you are given; Training for an Administration certification is a great way to understand the platform as a whole. At the minimum, it is a quick way to ensure you understand the platform and is the base level certification.
Salesforce Developers – You NEED This
From one Salesforce developer to another, we hope this article helps you avoid all, if not some of the mistakes most people find themselves in. Our goal is to share personal experiences with Salesforce developers through thought leadership and guidance. Learning from others mistakes is sometimes the best way to learn!
There’s more to explore at Smartbridge.com!
Sign up to be notified when we publish articles, news, videos and more!