I've had the pleasure of working with dozens of Salesforce developers. I've interviewed hundreds of them. Of all the types of developers, I've talked with more Salesforce developers than all others combined.
Over the years, I've gotten to understand their plight well.
Salesforce developers are in high demand. Not a week goes by where they don't receive at least one LinkedIn message or email from a recruiter.
Global demand for Salesforce CRM software remains strong. It owns 18% of the global CRM market and revenues will surpass $10B in 2018.
Salesforce's rapid growth has created a global talent deficit. There aren't enough Salesforce developers to meet the demands of its customer base.
The recent launch of Trailhead, Salesforce's online learning platform, is focused on this issue. But most of its training is for beginner and intermediate users. It will be a few years before it begins to impact the global talent deficit.
High demand for Salesforce technical talent leads to frequent job-hopping. Few Salesforce developers stay with the same company more than three years.
High demand also leads to high pay. Salesforce developers have the leverage to negotiate high salaries ... and they know it.
Companies often overpay Salesforce developers with average capabilities. They must in order to fill their many job openings.
Serving Business Users
Most Salesforce developers work on business applications that run inside the Salesforce environment. Referred to as "native," these applications are primarily used by business users.
Business users have a mandate to use company-sanctioned software. The company pays for their license and training and expects them to use it. A sales rep that manages their pipeline in Excel instead of Sales Cloud won't be around for long.
When end users have a mandate to use an application, the development team doesn't have to compete for users. They aren't concerned about user acquisition.
This is very different compared to teams that build consumer software. Acquiring new users and decreasing churn are constant concerns for these teams.
They eat and breathe cohort analysis, A/B testing and pour over conversion rates. These are a few of the modern techniques used to attract, acquire and retain users.
An Unfortunate Truth
The plight of the Salesforce developer seems pretty good. They're in high demand, they get paid well and they're guaranteed people will use the software they build.
But all that glitters is not gold.
I interview a lot of Salesforce developers, and there's a common theme I hear from these job seekers.
I always ask what their ideal job looks like. What type of work experience are they seeking? What do they want?
Almost all of them say they want to work for a company that helps them "learn and grow."
This is code for "I'm doing the same things over and over at my job, and I don't see it changing anytime soon."
The unfortunate truth about being a Salesforce developer is there are only so many triggers you can write, VisualForce pages to build and Lightning components to develop before you start getting bored.
Salesforce developers, like everyone else, want their work to be interesting. They want to work with new technologies. They want to solve challenging problems and have an impact on company success.
Unfortunately, the shine on a Salesforce developer's career starts to dull over time if you only work on business applications.
The Salesforce developers I know well tell me this happens at about year five of their career.
But it doesn't have to be this way.
Reinvigorating a Career
Business has evolved to where customers want to interact with humans less and do more on their own. They want self-service experiences.
They want answers to their questions without calling support. They want to schedule service appointments without calling the service department. And they want to place orders without dealing with a pushy sales rep.
The rise in demand for self-service experiences is good news for Salesforce developers. That's because companies are beginning to architect these applications to run on cloud CRM systems.
A CRM system is a great source of first-party data. This is the data a company directly collects about a customer. It's especially useful in e-commerce applications.
Quotes, orders and assets are excellent data sources for delivering personalized e-commerce experiences. These are standard objects in Salesforce.
Salesforce developers can reinvigorate their career by finding opportunities to build commerce applications. As more companies build commerce channels on cloud CRM platforms, there will be more of these opportunities.
Salesforce developers will finally have an option other than working on business applications.
So ... why is developing a commerce application more exciting than a business application?
For starters, the end user.
Competition Breeds Excitement
Salesforce CRM applications are predominantly used by employees in sales, marketing and support. They have a dedicated Salesforce license and they log into the org to access the application.
On the other hand, digital commerce application users are non-employees. They're customers and partners, and they access e-commerce sites over the open web.
Unlike employee users, customers and partners don't have a mandate to use an application. They have the power of choice and the development team has to compete for their engagement.
Competing for users raises the stakes considerably for a development team. Competing for users plus revenue raises it even more.
A developer's work has purpose when success or failure is measured in revenue. Competing for users and dollars creates an excitement hard to find working on business applications.
The Thrill of the Sale
There's something inherently thrilling about e-commerce. It's a great feeling seeing your customers place orders. The more the better.
Customers and partners vote with their money. If your commerce experience is weak, they won't use your software and they'll find another company to do business with. Your competition truly is only a click away.
That's why when customers do spend money with you, it's fulfilling. That's what developers want. They want to know their time and effort is having an impact on company success. They want to know their work matters.
Unfortunately, it's difficult to find this excitement working on garden-variety business applications.
What You Already Know Isn't Enough
Salesforce developers must learn new technologies to be productive building commerce applications. Only knowing the ins and outs of the Salesforce platform won't be enough.
The realm of commerce applications take the backend Salesforce developer way out of their comfort zone. You should welcome this because this is how you're going to grow.
Here's a few of the technologies you'll want to learn:
Product Information Management
Although Salesforce has standard objects for products and price lists, rarely is it the system of record for e-commerce product information.
Master data for products and price is usually a robust, enterprise-class PIM (product information management) system.
You'll need to learn how to work with custom PIM data structures. They can be complex and they vary greatly from the standard Salesforce CRM data model.
Digital Asset Storage
Salesforce is ill-suited to serve digital assets to commerce applications at scale.
Smart companies use media management platforms to store product images, files and video. You need to learn how to stitch these systems together with Salesforce and user interfaces.
Page Load Performance
Salesforce is infamous for slow page loads. While CRM application users may tolerate poor performance, your e-commerce customers won't.
Optimizing page load times is part of every commerce implementation. You must learn how to audit load times a and know when Salesforce is the responsible system.
Knowledge of Apex controllers will come in handy here. Locating, minimizing or eliminating inefficient calls to Salesforce is a must-have skill. You must also know how to manage state in commerce applications.
Analytics & Conversion Optimization
Digital commerce success is predicated on a series of conversions. Conversion rate optimization (CRO) is crucial for any digital commerce and marketing strategy.
Salesforce developers that want to build great commerce solutions must understand analytics.
You'll need to know how to use analytics to create advanced audience segments. Knowledge of the Salesforce Accounts > Contacts > Community User structure will help.
Segmentation is foundational to a CRO strategy. It drives content personalization, price optimization and targeted online promotions.
Working With UI Designers
Building commerce solutions requires skills that customizing native Salesforce apps doesn't.
Salesforce developers often double as the UI designer on projects involving native applications. That's because the user interface is a VisualForce or Lightning page.
These design systems come with prepackaged UI components. Even a Salesforce developer with zero visual design skills can create user interfaces inside of Salesforce. UI designers are usually nowhere to be found on teams managing native Salesforce applications.
This is not the case for e-commerce projects.
Intelligent UI design is crucial to meet the expectations of today's digital customer. Motion, smooth transitions and a good aesthetic are musts.
A good UI designer is a mandatory resource on a commerce implementation team. They create the UI design and manage the handoff to engineering.
Decisions made in the UI design process will influence the technical design. It can be awkward at first for a Salesforce developer to take instructions from a creative resource.
There will be a day when a designer asks for a disruptive data model change to achieve a certain UI goal. Learn to listen and be flexible.
The data you make available to the front-end could have a big impact on conversions and usability. Make every effort to be accommodating.
A Future of Opportunity
Salesforce purchased B2C e-commerce vendor Demandware for $2.8B in 2016. It followed this with a 2018 acquisition of B2B e-commerce provider CloudCraze. These acquisitions make Salesforce a major player in the enterprise e-commerce software market.
Salesforce will soon complete the integration of both applications onto its platform. I predict in early 2019 both offerings will be sold as Commerce Cloud.
Opportunities for Salesforce developers to work on commerce applications is going to increase ... significantly. The time to start preparing for this shift is now.
Learning the technologies, tools and techniques required on e-commerce projects will take time. If your current job is maintaining a business application, you'll have to do most learning off-the-job. The means investing personal time toward knowledge and skills acquisition.
Pivoting into the realm of commerce can reinvigorate a Salesforce development career, but it won't be easy.
But nothing worth doing ever is.
About The Author
Joshua Enders is co-founder and CEO of digital commerce consultancy Six Vertical. He talks to a lot of Salesforce developers about the work they do and what they truly want to become as professionals.
Six Vertical is always hiring Salesforce developers that want to reinvigorate their career. Get started at sixvertical.com/careers