Search overlay panel for performing site-wide searches

Salesforce (Heroku) Recognized as a Leader. Learn More!

Salesforce AppExchange Achieves Global Scalability with Heroku

As the premier marketplace for enterprise cloud applications that extend and enhance Salesforce functionality, Salesforce AppExchange serves as a must-stop hub for developers who create apps, components, and data flow solutions. It currently boasts over 14 million downloads. We sat down with Shea Styer and Ranganath Prasannakumar, two key players on the AppExchange team, to discuss how they built it and the benefits they gained by integrating Heroku into their process.

Global scaling: AppExchange’s microservices journey with Heroku

As Shea put it, AppExchange’s previous architecture was a monolithic codebase. The team moved to Heroku to modernize AppExchange and handle its significant traffic. They needed a non-static solution to manage the increased load, and Heroku delivered, allowing them to scale up with Dynos and leverage autoscaling.

Essentially, Heroku empowered the team to focus on development rather than platform management, letting them spin up as many apps or Dynos as they needed. This freedom to experiment proved powerful, transforming the platform into a playground for their ideas where they could safely and quickly test new features.

It was a dream as an architect to come up with all those different ideas and solve all the business problems without having to invest time and energy into managing infrastructure.
– Shea Styer, Salesforce Software Engineer

Finding efficiency and simplicity

Heroku enabled the creation of a unified pipeline to maintain everything, right from code on a feature branch to deployment on production. It also allowed them to implement microservices, design more flexible schemas and databases, and enhance developer productivity. A feature especially popular with the team is Review Apps, which allows them to automatically run any GitHub pull request in a disposable Heroku app, providing a quick and safe way to test and merge changes to the code base.

Accelerated deployments: AppExchange’s agile transformation

A significant reason for AppExchange’s move to Heroku was the demand for greater agility and quicker deployments. The Salesforce AppExchange team previously lacked full control over their deployments, requiring sign-offs and adherence to a rigid release schedule. Heroku empowered them to manage their own deployments, increase agility, reduce release cycles, and test new features instantly.

Heroku helps us achieve faster, more agile deployments on our own independent release cycles.
– Ranganath Prasannakumar, Salesforce Software Engineering Architect

The logic of choosing Heroku

Ultimately, a major reason that Salesforce AppExchange chose Heroku was because it was already part of the Salesforce ecosystem. While they did their due diligence and investigated other vendors, Heroku simply offered all the capabilities they needed.

Beyond that, Heroku helped AppExchange transform from a somewhat niche platform into a more open development space. Salesforce already serves developers exceptionally well, and adding Heroku further expands the talent pool with web technologies like Postgres, Node.js, and Lightning Web Components.

The working on an integrated Salesforce platform

With Heroku, teams consistently highlight their ability to develop, test, and deploy directly on the same platform. This significantly reduces DevOps burdens, allowing them to prioritize development. Building on a platform like Heroku, Tableau, or Slack offers a major advantage because it lets developers focus on delivering solutions instead of worrying about infrastructure.

The platform’s beauty lies in its simplicity: You only manage your app’s requirements, and a single, one-time configuration takes care of everything else. This app-first approach, even compared to major cloud providers, is what truly sets it apart.
– Ranganath Prasannakumar, Salesforce Software Engineering Architect

Freedom to work without compromises

With Heroku, the AppExchange team felt unconstrained, fully leveraging every part of the platform. Using Key-Value Store, Postgres, Kafka, and Private Spaces gave them flexibility, freedom, and fine-tuned access to controls. Heroku also simplified the integration of their reverse proxy provider and other architectural components into the framework, all without requiring any sacrifices.

Blue/green deployment: AppExchange’s strategy for uptime

Trust, especially regarding customer data and reliability, remains paramount at Salesforce. Previously, AppExchange faced the risk of a single change breaking their architecture without a simple, safe rollback method. Heroku offered a solution to that concern.

The team implemented a blue/green deployment strategy for their apps, maintaining two production versions: blue and green. If the blue app was serving all traffic, the green app would hibernate until the next deployment. This cycle would then flip, with the new deployment occurring on the green app. This approach allowed the team to conduct internal canary testing and gradually roll out fixes and updates with minimal disruption. These new sub-second rollbacks have boosted their confidence, enabling them to shift from bi-weekly updates to multiple deployments daily.

We’ve seen a lot more uptime, a lot less investigations come through as a result of Heroku.
– Shea Styer, Salesforce Software Engineer

Sharing the review space

Heroku delivered another incredible benefit: a more shared QA space. Previously, the team faced a time-intensive bottleneck during review cycles because only one person could access the QA environment at a time. This created a frustrating one-at-a-time queue, severely limiting developer access. Now, Heroku creates a review app environment that multiple developers can access simultaneously. This allows them to work on core settings for other apps while the review app emits and listens to events, streamlining their workflow significantly.

That was a huge win for us, and I think a huge developer productivity boost when moving to Heroku.
– Shea Styer, Salesforce Software Engineer

Experimenting with Agentforce

The AppExchange team is currently testing Agentforce, including a conversational app discovery agent designed to help customers find the right app for their needs. As they fine-tune the exact parameters before implementation, the team is focusing on an agent that can converse with customers, providing previews or agentic result summaries. Heroku is key to this process. Parts of the Data Cloud connection are powered by Kafka and other microservices run on the Heroku platform.

Launch your next project with Heroku

Get started now →

How the Salesforce AppExchange team did it

  • Used Heroku Dynos for development purposes.
  • Implemented Heroku’s autoscaling feature to help handle increased loads.
  • Integrating reverse proxy provider via Private Spaces.
  • Heroku Postgres helped when spinning up new databases.
  • Heroku microservices powered datacloud connections when testing Agentforce.
  • Lightning Web Components powers the UI of various web interfaces of the AppExchange bot on public domains, and embedded experiences within the Salesforce CRM.
  • Apache Kafka on Heroku propagates events based on listing partner additions and modifications. It also acts as a trigger for updating several other services with relevant data.
  • Heroku Key-Value Store provides in-memory caching to improve search performance on all our interfaces.
Salesforce AppExchange

Share this story

Highlights

  • Massive Scalability: Heroku’s core contribution to AppExchange was the introduction of microservices, which boosted the team’s scalability and created a flexible environment for innovation to grow their capabilities to service over 7,000 partners with over 14 million downloads.
  • Faster Deployments: Heroku gave AppExchange a new sub-second rollback capability allowing them to shift from bi-weekly updates to multiple deployments daily.
  • Easier Testing and QA: Heroku’s shared QA space provided AppExchange with a more open sandbox, allowing multiple developers to work and test concurrently.
  • Streamlined Rollbacks: AppExchange leveraged Heroku’s sub-second rollbacks, gaining greater confidence for more frequent releases and significantly reducing deployment stress.

Why Salesforce AppExchange chose Heroku

  • Scalability and Microservices: AppExchange modernized its monolithic codebase with Heroku’s help, enabling the platform to scale effectively with growing traffic.
  • Greater Platform Freedom: Heroku empowered AppExchange to fully leverage every part of the platform, including Key-Value Store, Postgres, Kafka, and Private Spaces, all while maintaining fine-tuned control.
  • Streamlined QA: By implementing Heroku, AppExchange eliminated QA bottlenecks, allowing multiple developers to collaborate simultaneously in the review environment.

About Salesforce AppExchange

The Salesforce AppExchange team serves over 7,000 partners on the Salesforce marketplace. They facilitate discovery for both developers and non-developers exploring the platform, including Tableau apps and Agent Exchange.

Get Started with Heroku

Sign Up Now Contact Sales

More Customer Stories

Vestmark Transformed Investment Tech Deployments from Years Down to Weeks Using Heroku
Softtrends: Driving Innovation for Faster, Cleaner Data with Heroku
How LaunchPad Lab Built Kawasaki’s App on Heroku in 4 Months
The Salesforce Data Migration Team Reached 99.8% Data Accuracy for M&A with Heroku

In the Spotlight

Spotlight Codeish

Code[ish] Podcast

Heroku in the Wild: reinteractive on AI and Rapid POCs