-
Challenge
The 2016 Puppy Bowl Fantasy Game would be the puppy-based online experience of the year – assuming it could stay up on game day.
-
Solution
A uniquely-designed, Javascript-only application architecture, coupled with aggressive proxy and browser caching to create an app that didn't so much as blink when the traffic torrent hit, even as we continued to support data-intensive, real-time updates for all visitors.
-
Results
During game-time, our 95th percentile server response time never exceeded 80 milliseconds. Translation: the game ran like lightning for visitors throughout the Puppy Bowl.
The internet loves puppies. That popularity meant the 2016 Puppy Bowl Fantasy Game was guaranteed to be a popular online destination on game day. That’s why Discovery Communications entrusted Viget to bring it to life. We took stunning designs created by the Discovery team and implemented them in a mobile-first fashion, with the goal of providing an experience just as engaging and seamless on the mobile phone during broadcast as it is on the desktop for users drafting their adorable teams.
-
A Relationship Built on Communication
To ensure an on-time and successful launch on a short timeline, we relied heavily on frequent and consistent communication. We worked closely with Discovery’s Creative Agency interactive team, through Slack, Github, and direct discussions, to course correct early any time something didn't come together as planned, and to facilitate short QA and feedback cycles.
-
Scalability and Performance
The app had to run smoothly and performantly during traffic peaks of Puppy Bowl Sunday proportions. A uniquely-designed, Javascript-only application architecture, coupled with aggressive proxy and browser caching meant the app didn't so much as blink when the traffic torrent hit, even as we continued to support data-intensive, real-time updates for all visitors. During game-time, our 95th percentile server response time never exceeded 80 milliseconds.
Planning for ScalabilityLawson Kurtz, Former Senior Developer
-
Real-Time Updates
We built the app to update and sync all data in real-time. We used Firebase's scalable, real-time data infrastructure to support many thousands of concurrent websocket connections to update Leah's stat sheet the very second she scores. Within the app, all data is managed by our own cutting edge data management library, Microcosm, which ensures that private data stays private, and public data is promptly synced back to Firebase.
BaaS at ScaleLawson Kurtz, Former Senior Developer
-
Building a Foundation for the Future
To make this app a foundation that could be reused and built upon in the future, we chose to build a React-based single page app, with a Hapi.js server component. It's fast, fluid, scalable, and extensible.
Summary
Thanks to collaboration with Discovery Communications and some well-planned development, we brought the 2016 Puppy Bowl Fantasy Game to life. On game day, the site was a fun, fast, seamless experience across all devices. Our 95th percentile server response time never exceeded 80 milliseconds. Translation: the game ran like lightning for visitors throughout the Puppy Bowl.