
How Zoom built their enterprise demo platform with Windmill
Zoom's Global Architecture division built a centralized demo platform on Windmill, enabling 80+ Global Architects to contribute workflows in multiple languages, supporting 400+ solution engineers and 2,000 account managers.
About
Zoom is a leading enterprise video communications platform offering meetings, phone systems, chat, and contact centers to millions of users globally. Their Global Architecture division supports 400+ solution engineers and 2,000 account managers who demonstrate these interconnected products to enterprise customers. With multiple products that rely on real-time APIs and complex integrations, the team needed a scalable way to create consistent, high-quality demo environments that could showcase Zoom's full capabilities to prospective enterprise buyers.
The Problem
Zoom is not a simple product to demonstrate. Unlike tools where you can quickly spin up a sandbox environment, Zoom is a comprehensive platform with meetings, phone systems, chat, contact centers, and dozens of features—all interconnected and dependent on real-time APIs.
"Zoom can be a very complicated app to demo. There's a lot of moving parts. It's SaaS, which always makes things a little harder to demonstrate because it's not particularly easy to just build a complete sandbox."
— Frederick Loucks, Technical Leader, Demo Platform
The traditional approach was unsustainable: every solution engineer built their own demo environment, manually creating accounts and maintaining configurations. This led to inconsistent quality, impossible scaling challenges, and valuable selling time wasted on demo infrastructure instead of closing deals.
Frederick's team was tasked with building a centralized internal demo platform, but the requirements were demanding:
- Complex API orchestration - Interact with 4 different Zoom API types (public, private web, back-office on-premise, browser automation)
- Polyglot Language Support - Support Python, TypeScript, PowerShell, Bash, and Ansible for varied technical backgrounds
- Robust Job Scheduling - Handle time-delayed tasks to create realistic content delivery
- Self-host on Kubernetes - Complete control in their AWS EKS environment
- Everything-as-Code - workflows with proper version control
"We needed something that could help us sit right in the middle of lots of different people needing to contribute, different languages being used, lots of CIS admin languages being used."
— Frederick Loucks
The Solution
Polyglot language support for varied technical backgrounds
Zoom's Global Architecture division includes experienced engineers who know PowerShell better than Python because they've been CIS admins or technical sales their whole careers. Windmill's support for Python, TypeScript, Go, Bash, PowerShell, and other languages meant the team could leverage existing scripts with minimal refactoring.
# Example: Existing internal library wrapped in Windmill
from zoom_platform_lib import account_provisioning
def main(account_email: str, license_type: str):
# Business logic lives in separate library
# Windmill orchestrates
result = account_provisioning.create_account(
email=account_email,
license=license_type
)
return result
Advanced job scheduling for realistic demo environments
Zoom's most innovative use case—"drip hydration"—required sophisticated job scheduling. Unlike databases where you can insert data instantly, Zoom's real-time APIs require sequential message sending with realistic delays to create compelling demos that feel authentic.
"We actually use Windmill's job engine to do all that heavy lifting for us. We schedule jobs into Windmill's job engine into the future to handle these drip hydration tasks."
— Frederick Loucks
When a solution engineer schedules a demo for next Tuesday, they kick off account hydration on Friday. Over the weekend, Windmill's job engine delivers 50+ pieces of content at realistic intervals—chat messages trickle in, voicemails arrive, documents get shared. By Tuesday, the account looks like it's been actively used for weeks.
Windmill as central orchestration layer
Windmill sits "at the center of everything" in Zoom's demo platform architecture self-hosted in AWS EKS. The platform consists of a React front-end portal with Windmill Apps embedded via iframe, allowing rapid feature deployment without front-end code changes.
"We can build things very quickly in Windmill, iterate very quickly, and we can ship them into a nice front end without needing to really modify the front-end code in any way."
— Frederick Loucks
This architecture enables self-service account creation (which took a year to build and "couldn't have been done without Windmill"), realistic account hydration through scheduled job execution, and citizen developer enablement for 80+ Global Architects who can now contribute tools and workflows in their preferred languages.
Git-backed workflows for team collaboration
With 80+ Global Architects contributing to the platform, version control and rollback capabilities were non-negotiable. Windmill's bidirectional Git sync provides both a system of record and the ability to revert commits when needed—critical for managing contributions from a large, distributed team.
The Result
After over a year in production, Windmill has proven rock-solid for handling mission-critical workflows that support Zoom's entire sales organization. Today, 80+ Global Architects contribute workflows and tools, supporting 400+ solution engineers who use the platform for demos daily and 2,000 account managers with demo capabilities—all self-hosted on AWS EKS with complete infrastructure control.
The platform has automated the entire demo lifecycle: account creation and configuration, content hydration and population, API orchestrations across four paradigms, and custom tooling that enables citizen developers to build the tools they need. Zoom's sales organization can now deliver consistent, high-quality demos across 400+ solution engineers, scale demo capabilities without scaling manual effort, and iterate rapidly on new features—directly supporting Zoom's revenue by ensuring every customer interaction showcases the product at its best.