How Real Estate company Keller Williams became a Technology Leader

Keller Williams is the world‘s leading real estate agency, employing more than 180,000 agents across the globe. This incredible growth story began in a single office in Texas, USA, in 1983, based on the core belief that real estate is all about relationships. Gary Keller, co-founder of Keller Williams, stated in 2018 that his company no longer wanted to be recognized as a real estate company, but as a technology company.

“That means we build the technology… that means we hire technologists.”

Driven by a desire to foster meaningful relationships, Keller Williams wanted to provide a seamless user experience for agents and customers (both home sellers and buyers) as they navigated the real estate market. They envisioned a highly flexible home-grown solution, instead of a SaaS suite that did not allow for customization.

Today, the Keller Cloud platform consists of two main components: Command and Consumer. Consumer is the customer-facing component of Command – a powerful, interconnected tool that enables agents to manage contacts, marketing profiles, campaigns and listings. All services are essentially microservices that run in Google Cloud, with Camunda powering the Tasks and SmartPlans components.

Evolving an agent-driven Modeling Process

SmartPlans are agent-configurable workflows that orchestrate a number of calls across services inside Command.

“Before Camunda was brought in, Keller Williams had the product vision for what they wanted SmartPlans to be, but the underlying engine was lacking to say the least. It was essentially a low code platform where they had a UI flow builder and they embedded this directly in the UI via an iframe,” Jeremy Warren, Lead Business Automation Engineer at Keller Williams said.

The low-code solution had limited ability to orchestrate integration calls and provided no visibility into workflows as they were executing. This is where Camunda and partner BP3 were brought in to evolve SmartPlans.

A Highly Flexible Architecture

In just 10 months, Warren’s team transformed SmartPlans from a low-code platform to a highly flexible architecture, running in Kubernetes in Google Cloud and using the Camunda Spring Boot Starter and NodeJS external task clients, with a React front-end, as well as auxiliary services including a scheduler and controller.

A Subscriptions database was added to the cloud microservices infrastructure, acting as the source of truth for all SmartPlans – ensuring data is accurate across all services. With Camunda orchestrating process logic, the platform was opened up to new patterns, so agents can schedule and stagger their individual SmartPlans. A Google Pub/Sub handles bulk starts and stops and listens to events in other Keller Williams services. Meanwhile, Camunda Optimize provides real-time visibility into workflow processes.

Agent knows best

Today, SmartPlans enable agents to craft bespoke workflows for their individual contact base, with full customizations based on their own experience to drive business. For example, sending text messages instead of emails to customers because this generates a higher response rate.

Keller Williams provides a library of standard SmartPlan templates that have proven powerful for agents and customers. Each agent can adapt those templates for their own needs or develop new ones from scratch.

To guard against workflow inconsistencies or accidental loops in process flows, Keller Williams opted for a multi-phase rollout of the new solution and put basic guards in place, so that agents don’t get into difficulties when modeling bespoke processes.

Today Keller Williams processes more than 13 million SmartPlan instances and onboarded more than 56,000 users to the system, as well as garnering positive feedback from agents who have had considerable success through tailored processes.

Keen to dive into greater detail? Jeremy Warren presented Orchestrating User Configurable Workflows at CamundaCon Live. You can watch the full presentation and download the slides.

  • Calling All Camunda Champions

    The Camunda Champion Program will spotlight and reward our most committed, collaborative community members — individuals who demonstrate product expertise while actively supporting and contributing to developer communities.

    Read more
  • A Can’t-Miss Opportunity for Camunda Developers

    It’s almost here! We’re counting down the days to the first-ever Camunda Community Summit, a two-day event curated especially by developers for developers. During the summit, our speakers will take deep dives into technical topics, provide live coding demonstrations, and show off the latest advances in product automation — all in a highly collaborative virtual format. Much more than a “Camunda 101” introduction to process automation, the summit is geared toward expert Camunda developers who want to get even more out of the platform.  The Camunda Community Summit offers participants the opportunity to learn, contribute, socialize, and grow. Specifically, you can expect: An interactive opportunity to learn from experienced Camunda community members A place to share your Camunda knowledge and...

    Read more
  • Camunda Cloud Console Go Client Library

    When working with multiple projects and multiple Cloud Services automation becomes a must. Camunda Cloud resources such as Zeebe Clusters and Camunda Operate are no different from other components such as Databases, or Message brokers, these need to be provisioned for your applications to connect with. This project allows you to connect to the Camunda Cloud Console using the Go language or a command-line tool, allowing you to create automation around when remote environments are created and destroyed. You can connect to these APIs using any language as these APIs are just REST endpoints, but if you have automated pipelines using a command-line tool might be the best fit for you.  This project provides a binary that you can download...

    Read more