From Start-Up to a Million Monthly Users - Sports Analytics in .NET at Bleacher Report
StatMilk was started as a bootstrapped sports analytics platform that provided users the ability to slice and dice football statistics any way they wanted. Launched in 2013 to little fanfare with a post on Hacker News, the two-man startup team was excited to get 20 concurrent users. Four years later, the StatMilk platform powers scores and stats for Bleacher Report, the second largest sports publisher on the internet, supporting over 50 million global users per month. This talk is about the growth of a small, self-funded fan-centric platform into an application that supports multiple sports and millions of requests. I'll discuss the challenges faced with this type of growth and show the evolution of our platform stack as it changed from a single ASP.NET MVC web app, to a load balanced framework with multiple web applications across distributed servers. Through this growth, we modified our architecture to use the latest standards in .NET technology including async/await, IoC, and ultimately migrating to .NET Standard/.NET Core. Highlights include best-practices when dealing with technical debt in a small team, technology challenges when dealing with an evolving audience and platform, and building fault-tolerant applications that scale from both predictable and unpredictable user surges.