Why Solera Health chose Retool over React for internal tools
Solera Health is a marketplace that connects individuals to interventions and treatments for chronic conditions and disease prevention, like diabetes prevention courses or weight management programs.
Like many fast-growing companies, Solera Health had to move fast to build their customer-facing products—often at the expense of internal tools and processes.
A lot of their internal processes were built on their CRM, with a few one-off applications built for admin tasks. And as the company grew, they realized it was time for more custom and scalable internal tooling.
Kenneth Molnar, a Dev Ops Engineer, and Kee Han Ooi, a Software Engineer, decided to scope out replacing Solera's internal tooling with React apps. “But we just didn’t need the same level of control and polish on our internal tools as the tools we were building for our providers—not to mention, we simply didn’t have the time to build React tools for everything,” explains Kenneth.
This is the story of why Solera Health chose to build custom apps in Retool instead of using React, and how those CRUD apps reduced friction and sped up workflows for customer support agents.
Kenneth and Kee Han agreed that the process of building React apps from scratch was too time-consuming, notably because:
Maintaining and testing all of the packages one by one is a slow process, especially when the team needs to update specific packages and be sure that they won’t break the application.
Even when using a library like Material UI, creating components from scratch is still slower than using an out-of-the-box solution.
Different permissions across the organization were a necessary day-one feature. When building a single destination for internal admin tooling, users with different job functions needed different levels of permissions, requiring the team to choose between making an extensive single application with a complex and flexible permission model, or smaller, more straightforward applications.
Not only was building React apps from scratch slow, but it also affected how they allocated team resources. More custom work meant more developers building and maintaining tooling.
At this time, they had a robust set of internal tooling for existing products that helped non-developers do their work. But as new platforms or products launched, the equivalent tooling took time to develop—meaning operational support tasks that were normally done by other teams had to be handled by developers until the tooling could be built.
Even if React apps could solve the problem well, the cost of slowing down new core product development was too high. “We had to find a better way to build internal tools,” says Kee Han. Soon after that, Solera’s CTO started looking into low-code and no-code solutions.
When looking for a new internal tooling platform, the team prioritized:
Accelerating internal tool building
Iterating on internal tools faster
Utilizing fewer dev resources
Allow engineering to be more focused on customer-centric initiatives
When they found Retool, it checked all the boxes, and provided a simple way to move away from React.
“Retool eliminates the pain of building React apps from scratch and gives us the best of custom tooling,” explains Kenneth. “It’s great because it’s technically a single application (Retool itself), but we can build small, tailored apps by job function on top of it— without the infrastructure overhead of actually managing multiple small applications.”
Here's how Solera chose to deploy Retool:
Solera uses an on-premise version of Retool
They use Retool on a Kubernetes cluster
They rely on single-sign-on to streamline access
Kenneth and Kee Han first installed Retool on a Kubernetes cluster in a non-production environment.
Then they configured single-sign-on with their identity provider (to demonstrate the ability to interact with their platform APIs using the same authentication models they use in their scratch-built applications).
Because their platform APIs do most of the heavy lifting around security, this increased their confidence in Retool from a security standpoint.
Finally, they built a few quick POC apps with various resource types to show that Retool could communicate with every kind of data source they anticipated needing in the short term (API, BigQuery, SQL, etc.).
At this point, they were convinced they wanted to move forward with making things more production-ready. To do that, they needed to:
Enable a good development workflow to move things from development to production
Set up a separate cluster for the two environments
Automate upgrades to Retool itself so that someone wasn't having to execute commands on the Kubernetes cluster manually
Enabled Git SYNC in their dev environment in a Read/Write fashion
Converted their original POC YAML files for the Kubernetes cluster config into Helm charts and put those in source control
Built a release pipeline in Azure DevOps to be able to deploy changes to the Retool infrastructure configuration
They then built out a production Kubernetes cluster and deployed Retool to it (configured to be Read Only on GIT Sync). They set up pull request workflows in Azure DevOps so that application developers could bundle all of the changes into a single pull request and deploy it cleanly to production.
“At that point, we had a nice workflow for developing apps directly in lower environments and then pushing them to prod via a PR when ready,” explains Kee Han. “The process went very smoothly.”
Kee Han single-handedly built several Retool apps used across the organization, including a provider admin dashboard, central contracts and data dashboard, an admin portal for Retool analytics, and a customer service dashboard.
Purpose: Allow Solera to turn providers on and off for payers.
Before Retool: Non-technical staff members had no way of accessing or modifying the data.
With Retool: Kee Han created a simple UI interface where a user can enable or disable a provider with the click of two or three buttons.
Primary benefit: Saves developer time because the alternative was to create another React app—which would have taken a ton of time.
Using Retool for our Provider Admin Dashboard is foolproof. Kee Han Ooi, Software Engineer, Solera Health
Agent view to search patient records (Note: All data is randomly generated)
Agents can edit any patient info directly in app (Note: All data is randomly generated)
Purpose: Empower customer-facing agents to find information to better assist patients.
Before Retool: Agents had to visit multiple data sources to find relevant patient information and respond to their requests.
With Retool: All patient information, such as programs, their programs ID, milestones, weekly assessment, history, and all their different activities, are in one place.
Primary benefit: Helps agents see critical information about patients, change information, and better serve patients.
Purpose: Track Retool usage, app changes, and user behavior to build better internal apps and understand what’s working.
Using Retool has provided Kenneth, Kee Han, and the entire Solera team an end-to-end app development process that's faster and easier to maintain.
“We’ve been able to rapidly and inexpensively crunch out applications that are very useful to our team,” explains Kenneth.
Feature requests or changes to tools used to take at least a week to be addressed, but with Retool, they can be made the same day. Kenneth Molnar, DevOps Engineer, Solera Health
What’s more, they've enjoyed building Retool apps. “Retool offers us prebuilt components and integration with resources that we otherwise would have to build,” Kee Han says.
“This speeds up our process and reduces our need to maintain package updates—in React, we’d have to update over 100 packages, but with Retool, we only need to update the Retool version, and the packages are updated automatically,” he adds.
The Solera team has also leveraged Retool’s customer support team, providing constant feedback and testing new applications and modules.
“Ultimately, Retool empowers us to provide a better tooling service level to our internal users than in the past and, as a result, better serve our customers,” Kee Han says.
By eliminating technical headaches from building apps in React and providing custom, easily updated solutions, Solera Health can focus on what they do best: delivering health solutions to their partners and patients.