Gartner predicts that by 2020, 30% of the searches on the web would be done without screens and it’s going to be a $40 billion market. 50 million adults from the US use smart speakers. 50% increase in the voice shopping consumer market is expected by 2022.
Amazon Alexa is a virtual private assistant designed to be capable of understanding voice commands and performing tasks thereby. It is an advanced speech to text recognition engine that is powered by Amazon’s artificial intelligence algorithms.
Sonos Tech was established in September 2018 with a vision to enable people to use voice as the primary medium to interact with technology for any means. It brings industry-specific voice user templates for voice-enabled mediums. It currently has two products on the market. Sonos-Dine is the voice assistant platform for restaurants to serve their clientele using Alexa devices sitting at each table. Sonos-Store enables existing e-commerce companies to sell their products on voice-enabled mediums.
The founder and the engineering team are experienced in AWS technologies and already have knowhow about Alexa Skill development. That’s why Sonos Tech selected AWS as the cloud vendor for ease of use and decreasing the time-to-market.
Sonos Tech management chose AWS serverless service stack to develop the product lines. It not only helps to bring a series of products in less time but when engineering teams put the product into production, they don’t have to worry about the infrastructure availability and scaling related issues. Sonos Tech is running the product stack without having a dedicated infrastructure team.
In Sonos-Dine and Sonos-Store, there are two modules in the application. On the web backend, Amazon API Gateway triggers AWS Lambda functions and Amazon RDS for MySQL is the database backend service. The other module is the Alexa skill which is being utilized by users via Alexa devices. AWS Lambda functions are used in the backend to process the transactions in that module.
Figure 1 - Demonstration of Sonos-Dine and Sonos-Store’s serverless architecture.
The major challenge before meeting Thundra was mainly the lack of observability of what is happening in the entire serverless stacks of the applications. The Sonos Tech development teams wanted to get alerted when something is not working right or any specific part of the application is failing.
Troubleshooting and finding the bottlenecks in the distributed traces was a problem for the developers. The mean time to respond to issues was high enough to affect customer satisfaction in a bad way. The developers had difficulties detecting, observing and taking action about problems such as timeouts, errors, and exceptions. Another challenge was to optimize and fine-tune the cost of the serverless stack which led teams to spend excessive time & effort. They used several vendors in the market but none of them solved the complex issues quickly and with the least effort.
Sonos Tech incorporated Thundra into all of its microservices to ensure that its teams have complete visibility into what is happening in its serverless environment. Since Thundra has an easy setup with automatic instrumentation, it was very easy to get onboard into their existing CI/CD pipeline.
Developers were not observing the execution times earlier. As a result, they were not optimizing the microservices with regards to error, latency, and cost. Thundra helped to not only see the total execution times of the AWS Lambda functions and the calls to other resources but also understood the root cause of the errors or latencies. Teams became able to improve the overall performance of the stack.
Engineering teams started using application tags in Thundra for the AWS Lambda functions in line with the application’s business logic and set granular alerts integrated with their incident management and collaboration tools. When developers receive an alert, they are able to quickly troubleshoot and debug the functions down to the line level of the runtime code.
Figure 2 - Screenshot from Sono-Dine’s Thundra functions page.
“Gaining end-to-end visibility and management for our serverless stack and increasing developer productivity and high application performance while proactively managing using metrics and benchmarks was a big win for us.” - Ankit Sheth, CEO, Sonos Tech
Thundra plays a substantial role in reducing the meantime to respond and mean time to resolve for Sonos Tech. Support teams experienced a major speedup in resolving the support tickets. An average of 80-85% reduction is observed in troubleshooting time. Thundra helps engineers focus on their business and reduces their active monitoring efforts by 60% with its daily and weekly reports.
Ankit Sheth summarized “With Thundra, we mainly work on optimizing our queries which were resulting in higher execution times. As a result of having granular visibility on our serverless AWS environments such as performance, cold starts, and errors, we are able to optimize our cost.”