Jobber's High-Performance Embedded Dashboards with Cube
- Application Infrastructure & Middleware - Database Management & Storage
- Infrastructure as a Service (IaaS) - Cloud Databases
- Buildings
- Semiconductors
- Product Research & Development
- Quality Assurance
- Traffic Monitoring
- Transportation Simulation
- System Integration
- Testing & Certification
Jobber, a leading provider of business management software, supports over 50 industries and has serviced over 15 million households in more than 47 countries. A crucial tool for Jobber's customers is dashboards that provide a snapshot of their businesses, helping them schedule their day, optimize routing, keep track of invoices, accept payments, and more. However, as Jobber's business scaled and accumulated close to a decade of data, the dashboard performance began to slow down. The team tried to address these performance issues through caching, query optimization, and database tuning, but they realized that more needed to be done. The challenge was to find a solution that could handle the large amount of data and still deliver high-performance dashboards.
Jobber is a leading provider of business management software, helping small home service businesses stay organized, connect with customers, grow revenue, and better compete against large corporations. The company's technology supports more than 50 industries, including HVAC, plumbing, lawn care, cleaning, and more. Since launching in 2011, businesses using Jobber have serviced over 15 million households in more than 47 countries. Today, more than 100,000 service professionals use Jobber's platform and rely on it to stay on top of—and grow—their businesses.
Jobber found a solution in Cube, a platform that offers flexibility and a two-level caching system. The Jobber team started using Cube almost as a black box, communicating with it and removing the optimization code they had to maintain in the past. Jobber's first use case with Cube involved using daily rollup pre-aggregations with the two-level caching. They also leveraged the external pre-aggregations capability of Cube, as their source database was a read-only database replica. Jobber's architecture involved a single PostgreSQL database backend, a read-only replica of the database to populate the rollup pre-aggregations database, and wrapping the Cube REST API with their own API for handling things like authentication. They also used multitenancy with a query transformer to enforce at runtime that all data queries filter to the authenticated tenant.