Udacity migrated from a monolith to a polyglot microservice container architecture early in the container hype cycle, starting in 2014. We built a lot of custom integrations and have seen several of our key components deprecated or shut down while others went through painful upgrade cycles that we sat out for years, skipping upgrades and duct-taping over the sharp edges.
This year we leapt forward from HAProxy 1.6 to HAProxy 2.2 (and 2.4 by the time of the presentation) to build an API Gateway that bridges seamlessly between generations of infrastructure.
We followed our Students First motto to identify the slowest parts of our web experience and worked backwards to build the routing and proxy layers that speed up our site now and buy time to upgrade the crustiest parts of our infrastructure later.
Aaron is Director of Engineering for Udacity’s Platform organization, keeping the site online, available, scalable, and accessible to our students around the world while enabling continuous delivery of new products and features.