In a recent post, I explained how we, as developers, often hear that Salesforce admins don't want to learn Git.
In that article, I explained the reasons for this phenomenon and concluded that admins actually do want to learn Git. In fact, 265 people (as of the time of this writing) have signed up for my upcoming Git for Salesforce Admins free training course.
But it is unclear what's in it for them or why they should do it.
In this article, I'll explore 5 reasons why Salesforce admins can benefit from learning Git, but it's probably not what you think...
Using Git daily? Probably not
First, I want to start by saying that I don't think the average Salesforce admin will ever use Git in their daily workflow (unless they use an app, more on that later...)
Git is primarily executed in a terminal window by committing changes to XML files downloaded via the Salesforce CLI and/or VS Code. That sentence, right there, is already a huge barrier for many admins.
That's why I started the #GAPlease movement to put pressure on Salesforce to make the Salesforce Code Builder generally available as soon as possible. The Salesforce Code Builder will make SFDX and Git accessible to many admins.
For developers, using Git makes a lot more sense because they are already writing Apex files on their computer, committing to Git is a few commands away. But it's not too straightforward for work mainly done via the Salesforce UI (what admins do).
Also, let's not forget that admins are not just doing work via the UI; they usually deal with a lot of other stuff like user training, onboarding, issue triaging and troubleshooting, building reports, doing BA work, etc. Downloading XML files to commit to Git is probably not a top priority.
Downloading XML files to commit to Git is probably not a top priority.
So, if I don't think that admins will use Git in their daily workflows, what's in it for them?
1. Solution Architects must understand version control
Many admins aspire to become solution architects one day. Unlike a technical architect, a solution architect is a little less technical yet is supposed to have a thorough understanding of the solution architecture of a Salesforce implementation.
This begs the question:
I'm not saying a solution architect should be able to roll up their sleeves and start committing files to Git or, worse, write down the YAML file to generate a CI/CD pipeline.
But they should understand the following:
- When metadata changes are committed to version control
- What is the branching strategy
- Is Git being used as a "source of truth" or as a backup?
- What Git provider is being used
- Is it possible to rollback changes?
One way to understand the above is by at least learning the fundamental concepts of Git and version control. Again, you don't need to be a ninja, but you should be able to hear a conversation about version control and not feel lost.
2. Solution engineer for a Salesforce DevOps vendor
Over the last few years, the number of Salesforce DevOps vendors has exploded; these include:
And probably a few others I haven't noticed...
Many of these companies have Solution Engineering roles where you are supposed to guide a potential customer through your company's product offering, map out requirements to features, etc.
Here's one example of such roles (this is as of March 2023, this role may be gone depending on when you read this article):
I've also seen such roles for the other vendors listed above.
For some of these roles, you don't need to be a hardcode Salesforce dev. You can be an experienced Salesforce admin with a solid foundation in version control.
If you are interested in pursuing a different career path in the ecosystem, learning Git can open many doors for you. And again, no need to be an expert...
3. You may be forced to use it
When I said that the average admin wouldn't use Git in their daily workflow, I mainly referred to solo admins.
However, even if you don't use Git in your current role, what guarantees you won't ever be asked to? Presumably, you won't stay in this role forever.
What happens if your next admin gig is for a bigger company with an established DevOps or CI/CD process, and they demand admins to participate in the process?
I know a few companies that require admins to commit changes to version control. That means they must install VS Code, learn SFDX, and use Git to commit changes to XML files after making changes in the Salesforce UI.
I don't know about you, but I'd prefer to start such a job with a baseline knowledge of Git and version control. There's enough pressure to learn the internals of the org, the customer's business process, etc., to add Git on top of that.
So it would do you well to have foundational knowledge, even if your current company doesn't require you to.
It would do you well to have foundational knowledge, even if your current company doesn't require you to.
4. You want to transition to a Salesforce developer role
I was a Salesforce admin for 5 years before I became a developer/architect. I know many admins also want to move into developer roles.
Developers should use Git, period. If you are a Salesforce developer and your team is not using Git, you should probably talk to your manager and figure out why.
So, if you want to become a Salesforce developer, you will have to learn Git; it's not an optional or nice-to-have skill (it was years ago, not anymore)
5. Your company uses a DevOps vendor
Finally, it's possible that your company will buy licenses for one of the DevOps vendors I mentioned above. With all these vendors, you won't be using Git directly, which makes it a lot easier for admins to adopt.
However, Git is still there in the background. And to get the most out of your investment in such a product, you must understand the general concepts of Git and version control. Otherwise, the product will become a black box, a magic hat that does things, but no one understands why or how.
I mentioned this in my previous article:
Using a DevOps vendor is not an excuse not to learn Git
Ok, there's a lot in it for me; now what?
Now you need to start learning. I can recommend a few ways:
Many of the DevOps vendors I listed above have certification programs; some of them are a bit generic (which is good), while some of them are more about how to use their product. Regardless, getting one or two of those certs will help you get introduced to the world of version control and Git.
If you want something more personal, I recommend signing up for my upcoming Git for Salesforce Admins training course. I'm also thinking of doing a webinar with Salto to expand on this article and give a quick overview (like a preview of the full course).
If any of those 2 sounds interesting, sign up here.
I hope you enjoy this article. Let me know your thoughts!