I have been a fan of serverless compute for quite some time now, whether AWS Lamda or Azure Functions. The idea of offloading compute in either an asynchronous or synchronous flow is powerful.
At Dreamforce 2019, I saw a session for Salesforce Evergreen functions, and I was instantly intrigued. After all, why invent serverless functions on Salesforce when other cloud platforms succeeded? Is there really a use case?
The demo seemed flawless, and it made sense to potentially contain Salesforce compute within the platform. I shrugged and thought, yeah, if that’s part of the standard Sales or Service SKU, that would be immensely powerful.
Flashforward to 2021, when Salesforce Functions (formerly Evergreen) went QA at an additional cost.
I hadn’t given Salesforce Serverless much thought since Dreamforce, as I was wrapped up in other projects. But, I was stunned; could this be useful to me, knowing I had AWS available? Is this a way to bypass Infrastructure or Reliability teams?
In a way, yes, it is, and that’s part of the value. Since Functions are contained within the Salesforce Cloud, ownership remains with the Business Systems and CRM teams that own Salesforce.
There was no way this is the only use case for functions, though, and I was right.
Cue a freakishly warm day where I decided to clean the garage and catchy up on the Salesforce Developer Podcast, Episode 109: Salesforce Functions with Jonathan Jenkins.
Not only do Functions allow you to operate independently from Infrastructure teams – but I would check with them and InfoSec – they offer additional value.
Suppose you work in a regulated industry or deliver a product. In that case, this immensely reduces your compliance overhead – hello, clean SOC-II! Because Functions are on the Salesforce platform, there is no need for complex authentication calls or establishing connected services.
Not only that, but your Salesforce Devs who are strong with Apex or JavaScript can experiment with additional languages in a familiar ecosystem.
What struck me the most – the SKU is not Salesforce Functions but rather Salesforce Cloud Compute. This implies that Functions are just the beginning, the way to offload complex logic on a multi-tenanted platform. What’s next? Kafka-esque CDC?
Overall, Functions are intriguing but not something I will be pursuing in my current Org. But, you better believe that I will be keeping my eye out for the next iteration. Oh, and keep an open mind in case I need self-contained compute!