Categories
Digital Transformation Platform Migration & Modernization

The Best Toolset for Your Digital Transformation

The Beginning

In early 2016, Salesforce really caught my attention. At the time, I was leading high-dollar digital transformation technology efforts fueled by mobile and web requirements. These projects were built with the user interface on whatever the current sexy JavaScript framework flavor of the month was—Backbone, Angular, Bootstrap, Foundation, React, and myriad others were in the tool belt at one time or another—and a middleware API tier that was built using technologies and platforms like Java EE, Node, IBM on-prem middleware, and a mixture of AWS services. Prior to investing the time in learning the platform, I thought of Salesforce as just a CRM.

Once I realized what Salesforce had built at a platform level, I couldn’t get enough of it. I’d seen a number of “low code” platforms in the past that didn’t deliver, mostly because they weren’t flexible enough to allow someone with a development background to meet any requirement thrown their way.

Seeing this unfold over a decade of technology experience made me come to the conclusion that low-code platforms just weren’t equipped to handle the types of challenges posed by enterprise digital transformation initiatives. Engineers like myself would always be needed to write the complex code required for fueling great user experiences. 

By mid-2016, I realized that Salesforce and its Lightning Platform had proven the above conclusion wrong. Green Irony was born.

System of User Engagement

Salesforce provides the best possible platform for delivering the user experiences required for digital transformation. Using a sophisticated mix of drag-and-drop tooling, an extensible programming model, and a broad array of on-platform applications, Salesforce provides a vehicle for fueling the user interface side of digital transformation efforts.

With much of the functionality either out of the box or configurable in a short time period, it also cuts down on the grunt work that IT teams would have to do in the past, allowing them to focus more on business value than time-consuming tasks best categorized as reinventing the wheel. 

While Salesforce goes to market with very specific user scenarios, the Lightning Platform that they use to build these scenarios is powerful enough to deliver any user experience need thrown at it:

  • User interface
    • Componentized drag-and-drop controls for building custom page layouts tailored to specific user personas 
    • Ability to extend existing functionality using custom-built components that work with drag-and-drop editor
  • Development acceleration
    • Rapid data modeling tools with built-in foundational functionality like automatically-generated CRUD REST interfaces
    • Formulaic data fields for easy-to-build functionality without writing code
    • Built-in no-code automation tooling with ability to use programmatic Apex language for more complex needs
    • Full support for all common integration patterns, removing typical “low code” limitations
    • Thriving 3rd party ecosystem on the Salesforce AppExchange, offering bolt-ons that layer in value in specific scenarios
    • Integrated JavaScript UI framework similar to other advanced MVC-style frameworks in the market to fuel custom requirements
  • Process control and reporting
    • Data validation enforcement 
    • Visual user workflows to drive standardized processes 
    • Process control and approval workflows
    • Real-time access to all critical workflow data for users, management, and executives
  • Automation
    • Full suite of automation tooling designed to let users focus on what’s important instead of manual data entry
    • Built-in industry-specific applications with out-of-the-box automation for common user workflows like bank referrals or loan origination

This platform delivers the user experiences necessary to execute on digital transformation efforts much more quickly than the technologies I’d used in my past life. Since Salesforce facilitated the creation of these user experiences much more rapidly, Green Irony would focus on the area that gated most digital transformation efforts, and one that I was intimately familiar with given that my background is in middleware: integration.

Salesforce Integrations

Because the Salesforce platform includes a fully-featured programming language similar to Java (Apex) and an MVC-style UI framework (Lightning, and in the legacy world, Visualforce), the opportunities for customization are not bounded like they would be in a typical no-code or low-code platform.

Anything you’d expect to be able to do from more heavyweight options like JEE or .NET is at your disposal on the Salesforce platform, including integration. These integration patterns are no different than what our engineering team had seen in other enterprise technology solutions, so they were already very familiar to us.

What needed to be learned, then, was how to use Salesforce’s configuration and programming methodology effectively so that our team was equipped to build integrations that delivered not only on the system requirements but also on the user requirements. Integrations built without knowledge of the usage requirements rarely work as intended; therefore, understanding of the Salesforce workflows and their best practices was critical.

We took it upon ourselves to master every aspect of the Salesforce platform so that we could be the best at harnessing its power for integration-heavy digital transformation scenarios. 

When building the integrations, it struck me as odd that we were still using the same techniques we’d always used for enterprise integration. These techniques were effective but created point-to-point connections that were brittle to change, time-consuming to create, and not reusable.

The Salesforce platform had solved the need for a system of engagement that could keep up with the pace of today’s technology needs, but the integrations were still very time-consuming to create and maintain and were always the long pole in every project, gating our ability to accelerate these efforts. 

There had to be a better way. In mid-2018, Salesforce CEO Marc Benioff tipped us off to that better way.

Say Hello to MuleSoft

A little over two years ago in May of 2018, Salesforce completed its acquisition of MuleSoft at a staggering trailing-revenue multiplier of roughly 22x. Prior to the acquisition, we were still thinking of integration in the same way that we had for years: point-to-point. We built custom integrations using Apex in Salesforce for client-driven interactions and leveraged the robust Salesforce API for inbound integration needs.

When requirements dictated the need for additional flexibility in transformation and aggregation, we built out middleware tiers using technologies like Node.js that we, at the time, thought of as rapid enablers for integration. Additional development acceleration could be achieved by adding a platform-as-a-service like Salesforce’s Heroku, which took away many hosting and administrative considerations, allowing my team and I to focus purely on the code needed to integrate Salesforce to other enterprise systems. 

Like Salesforce did in mid-2016, MuleSoft drastically changed my thinking two years later. Its API-led approach, which we cover in great detail in The Value of Anypoint Platform, was something I had not seen before despite being heavily involved in middleware and integration since I started my career at IBM in 2005.

It was a new and different way of looking at integration, and one that would deliver greater speed to market, lower TCO, and more overall value to our customers. The MuleSoft toolset equipped developers with everything they needed, soup to nuts, to deliver using the API-led approach and allow customers to invest in an integration strategy rather than continually burning time and money on tactical approaches. 

MuleSoft was the Salesforce of integration, enabling our development team to move much faster than we could before. Our integration strategy made a rapid shift.

Salesforce and MuleSoft: Better Together

Combining these two platforms drives the needs of digital transformation initiatives much more effectively by giving technology teams every tool they need to move at the speed of today’s digital world. Salesforce provides the ability to handle today’s user engagement needs. MuleSoft ensures that the data that fuels these user experiences can be made available in a very effective way. 

Technology executives who adopt these two platforms to drive their initiatives will enjoy much faster time-to-market and a better total cost of ownership than home growing the solutions using custom code. In the coming months, we will be rolling out a series of blogs and content that describe the multiplier effect of leveraging Salesforce and MuleSoft to tackle complex digital transformation use cases.