Summary
Almost every software project of meaningful scale eventually runs into architectural problems. One of the larger issues we’ve dealt with at Twilio is an increasingly-brittle and hard-to-manage PHP codebase, originally responsible for running a website and public REST API. Over time, core business logic has been extracted from the legacy codebase into internal services fronted by a public REST API. This talk will explore how Python and Flask were used to build a simple proxying HTTP layer to handle all of Twilio’s API traffic and direct it to the appropriate internal systems. Along the way, we’ll cover why Python is well-suited to this application, ways to test code that’s replacing existing services, deployment strategies, and all of the benefits that came from migrating to more modern systems.