Dubber, Temporal, and Conversational AI at Scale

Temporal accepts and embraces the reality that software systems have different pieces and those pieces break and you have to be able to recover from them

dubber png white

Industry

High Tech

Use Case

Applied AI

Company Size

51-250

SDK

Java

Temporal

Cloud

Conversational AI at Scale

Dubber is a conversation intelligence company headquartered in Melbourne. Its platform integrates with hundreds of telecom service providers around the world, ingests recordings from calls, and provides insights. Initially, the platform was used mainly for compliance, but recently, the team has pivoted towards AI capabilities. With its AI engine, Dubber can provide services such as abuse detection, customer complaints, sales interactions, and call summaries.

There’s a number of these tools that do this DAG-style workflow orchestration. We tried a bunch of them, and we tried out Temporal, and we had much better success with Temporal. –Jacob du Plessis

The search for workflow orchestration tool

Before using Temporal, the engineering team at Dubber was previously using a more primitive orchestration tool. They realized their use case was fundamentally a sequence of steps, which maps well to a workflow. So they began to evaluate various new workflow orchestration tools. Their requirements were reliability, recoverability, observability, and scalability. They tried out Airflow, but the trial didn’t go well. They also explored DAG tools, but wanted to be able to code in Python.

Ultimately, the team chose Temporal, which checks the box for every one of their requirements. They decided to go with Temporal Cloud instead of self hosting themselves it was available as a turnkey solution, and they didn’t have to manage the burden of supporting the various software components that make up the Temporal Service.

Running AI Pipelines with Temporal Cloud

Dubber uses Temporal Cloud to orchestrate an end-to-end AI pipeline that highlights “Dubber Moments.” The pipeline ingests, processes, transcribes, and generates summaries of calls. Then it highlights “Dubber Moments,” which are key snippets the customer should examine further. By surfacing these Moments to customers, Dubber lets them drill into issues like a customer service complaint or the closing of a sales deal. This use case is an increasingly large part of Dubber’s revenue as they continue emphasizing AI applications.

Due to the sensitive nature of call data, this system is deployed in eight regions worldwide to comply with regulations. Temporal has made it easier to deploy in multiple regions because each region is simply a different Temporal Namespace.

We treat the observability we get from Temporal as 100% accurate, because it’s actually showing me the state of the transaction or the Workflow.

Temporal Cloud satisfies all of Dubber’s requirements

After using Temporal Cloud for the past two years, the Dubber engineering team has found it meets all their initial requirements:

1. Durable and Reliable Workflows: Temporal has given Dubber the ability to create durable workflows. If a Workflow fails, the capacity to replay the Workflow to a specific point in time enables a faster and more efficient use of resources.

2. Recoverability: with built-in retries, Temporal automatically recovers when a step fails. This reduces work for the Dubber team. Additionally, the team highlighted the benefits of creating named classes for retries that abstract away the numeric settings. This allows developers to consistently achieve known retry behaviors.

3. Observability: with monolithic architecture, and distributed systems, it’s hard to understand where a transaction is and what went wrong. Temporal provides a UI where Dubber’s developers can see the state of Workflows, what data has entered and left, and whether anything has gone wrong. This observability is available out-of-the-box, with no need for integrations or setup. Employees who are not developers can also see what’s gone wrong, opening Temporal up to more business use cases.

4. Scalability: Temporal allows Dubber’s architecture to scale to process a large volume of calls concurrently. Further, the team feels confident in their use of Temporal Cloud because they know Temporal Cloud supports massive, web-scale customers, so its architecture can support their own workloads.

We get high quality support from Temporal quite quickly… It’s a pleasant surprise that the quality of the support is just outstanding.

Additional benefits of Temporal Cloud

Temporal has provided the engineering team with additional value they didn’t expect, helping them build more efficiently and align better to their business goals.

  • Separation of concerns: Temporal allows Dubber to separate certain tasks into the orchestration layer by using Activities. By defining that separation, Dubber is able to better adhere to their architecture.

  • Resource Management: With Temporal, Dubber now orchestrates workflows that support both low and high resource-intensive processes. They can prioritize tasks and set different retry policies based on their resource requirements. This capability lets them be more cost-effective.

  • Developer experience: Temporal cloud has offered an exceptional developer experience, with the ability to write in Python, Go, and .NET and access to the source code.

  • Support: Dubber can raise a ticket from the UI and get immediate help from the support team. They’ve also used check-in sessions with Temporal Solutions Architects to help them effectively design their Workflows, and they’re involved in the community Slack to connect with other Temporal Users.

The Future

Dubber sees AI intelligence as the future of their business and will continue pivoting towards more AI use cases. Temporal will provide a resilient backbone for this new area of growth.

Build invincible apps

Ready to learn why companies like Snap, Alaska Airlines, and Nvidia trust Temporal as their secure and scalable way to build and innovate?