I led a team of five engineers in completely redesigning the software that runs station sites like Z100.com. These sites were driven by a Python form post application with poor hit rate in Fastly. We reimagined it from the ground up, rebuilding it as an isometric React application with a GraphQL backend. We built a custom plugin for graphql-codegen that allowed us to generate typed SDKs for our GraphQL API Gateway, taking advantage of Automatic Persisted Queries in Apollo server to dramatically improve time to first byte for both first page load and client-side load of the application.
While employed at Highwinds, I led the team responsible for the public API and customer portal. We replaced a Swing and Flex application with a new PHP backend and AngularJS frontend. We enabled full-site delivery through the CDN, and built a compatibility layer that allowed us to maintain backwards compatibility with API integrations while rolling out a new version of the API that supported new CDN features that had been released since the portal's inception. The frontend was entirely built on top of the new API, allowing us to ensure that the public API had first-class support for implementers like Microsoft, Valve, and Giphy. Once Highwinds was acquired by StackPath, I was in charge of combining the best-in-breed technology from MaxCDN, Highwinds, and StackPath into a single self-serve secure CDN offering.
Due to latency requirements on the APIs that served our over 125 million mobile users, we were unable to capture metrics inside of the request cycle. With an ever-increasing volume of traffic coming to the platform, I built up a petabyte-scale log processing pipeline to gather metrics from our three generations of public APIs. For this, I used fluentd to push logs from the edge to S3, then use Elastic MapReduce to process the logs and pull out relevant metrics, finally pushing them to BigQuery for analysis. I then built a multi-tenant business intelligence suite in Python and deployed it to Google AppEngine so our content providers could see the performance of their content on the platform.