Customer case study

fuboTV Tackles Performance Regressions Before Production with k6 Cloud

  • Time spent troubleshooting performance regression
    shortens from few days to few hours
  • Platform availability improved
    from 99.5% to 99.95%

With a mission to provide the world’s most thrilling sports-first live TV experience through the greatest breadth of premium content, interactivity and integrated wagering, fuboTV Inc. is focused on bringing to life its vision of a streaming platform that transcends the industry’s current virtual MVPD model.

Leveraging its proprietary data and technology platform optimized for live TV and sports viewership, fuboTV Inc. aims to turn passive viewers into active participants and define a new category of interactive sports and entertainment television.

Through its cable TV replacement product, fuboTV, subscribers can stream a broad mix of 100+ live TV channels, including 74 of the top 100 Nielsen-ranked networks across sports, news and entertainment — more than any other live TV streaming platform (source: Nielsen Total Viewers, 2020). fuboTV intends to add interactivity to its streaming experience with the launch of predictive free-to-play gaming in the fall of 2021 and Fubo Sportsbook in the fourth quarter of 2021.

fubo.tv

Key takeaways

With k6 Cloud, the teams don’t have to manage infrastructure or constantly troubleshoot tests, giving them more time to focus on deploying changes that provide greater value for fuboTV users.
k6 Cloud helps the teams ensure that the fuboTV platform can provide high availability for all users on the platform, and support a large number of new signups, especially in a short period of time during the big events.
Leveraging k6 Cloud, fuboTV developers have the confidence to make complicated performance improvements as a result of the platform’s ability to test more precisely.
k6’s flexible JavaScript API and CLI allow the developers to quickly adjust and run small ad-hoc tests as well as large scheduled tests.

The challenge

The teams at fuboTV share a DevOps mindset, so all the developers within the organization participate in testing and site reliability activities, which include load and performance testing. However, their existing testing solution was complex.

The teams wanted a load and performance testing solution where they didn’t have to spend so much time troubleshooting test scripts. They needed a solution that could handle complex use cases that simulate different user flows and would help them catch any performance regressions in builds before they reached production. The solution also had to allow the developers to achieve as many requests per second (RPS) as needed for each use case.

The teams decided to use k6 Cloud, a testing solution that offers the convenience and functionality they wanted.

The reliability and availability of k6 Cloud allow us to spend our time building great features that power fuboTV products instead of worrying about potential performance regression issues. Having the confidence that we’ve prevented performance regressions enables us to safely release new features faster, creating more value for our users and gaining an edge over our competitors.

Anton Khabaiev

Director of Engineering at fuboTV

The solution

k6 Cloud has become a crucial component of fuboTV’s testing stack, allowing the developers to catch any possible performance regressions introduced in recent builds. With k6 Cloud, the teams don’t have to manage multiple instances of load generators—it does this automatically. It enables the teams to prepare the fuboTV service for a rapidly growing user base.

The teams use k6 Cloud to simulate and run complicated use cases, like the fuboTV signup flow. Developers test every step of the user signup process, from creating an account to selecting and buying a subscription. And k6’s flexible JavaScript API and CLI allow the developers to quickly adjust and run small ad-hoc tests as well as large scheduled tests.

The teams took advantage of k6’s customizable subscription plans, tailoring one plan specific to their needs. With a custom plan, they were able to adjust every k6 Cloud usage parameter, including virtual users, number of tests, test duration, load zones, and test concurrency.

The results

With the help of k6 Cloud, the teams at fuboTV can spend most of their time creating new features and making improvements that provide a greater value for their customers. Developers now spend far less time troubleshooting tests, which has boosted team productivity and accelerated the deployment of changes to the fuboTV platform. They also have the confidence to make complicated performance improvements as a result of the platform's ability to test more precisely. With the help of k6 Cloud, the teams can ensure that fuboTV can provide high availability for all existing users on the platform, supporting a large number of new signups, especially in a short period of time during big events.

k6 Cloud helps give our developers the confidence to make even the most complicated changes and performance optimizations with peace of mind. With k6, we can ensure that no regression reaches the production environment.

Ihar Zhavarankau

Senior Software Engineer at fuboTV