Experience
2018 — 2021
Bristol, Connecticut, United States
Lead architecture of next generation serverless (lambda) based REST APIs. The full stack utilized Cloudfront, API Gateway V2, Elasticache (redis), SQS, CodeDeploy, as well as other technologies. Observability of the stack relies upon Influx/Grafana, AWS X-Ray, Cloudwatch Dashboards, and NewRelic Synthetics. In addition, I lead an effort to evaluate languages for the new architecture, and transitioned the team from a JVM based architecture to Go to take advantage of the quick startup time, low memory footprint, and overall improvement in developer productivity. In addition, a fully continuous Jenkins based pipeline was created to push straight to production. As part of the pipeline, quality gates, linting, continuous load tests, and rolling deployments with automatic rollbacks were implemented.
2015 — 2018
2015 — 2018
Core responsibilities include architecting and maintaining the core services powering all WatchESPN and ESPN+ products, including client facing APIs, GraphQL based core APIs, Angular based admin tooling and supporting DB, Elasticsearch powered search API, and a custom dynamic image composition service.
This includes knowledge of the following, among other thing:
• Java memory management and garbage collection
• Caching - CDN, distributed (Varnish, Memcache, Redis) and local (Caffeine)
• GraphQL and REST
• Cloud/AWS based architecture
• SQL vs "NoSQL" persistence including DB migrations (Flyway)
• Elasticsearch
• Monitoring (AWS X-Ray, NewRelic, ELK)
2011 — 2015
2011 — 2015
Upgraded a legacy consumer facing mobile Android application distributed to millions of users. This involved integrating with Android Cloud Messaging, integrating with REST APIs, analytics and crash reporting suites.
Lead developer on ESPNs first direct to consumer iOS application. Development was done in Objective-C.
Assisted in developing ESPNs first Apple tvOS application using Swift. During this project I also developed a Spring Boot based REST API that has formed the backbone of all future WatchESPN applications to date.
The Spring Boot based service is integrated with MySQL and Memcache, and provides the data for all WatchESPN applications.
Monitoring is performed using New Relic and ELK.
The admin front-end to the service is also a Spring Boot and Angular 5 application, using PrimeNG and custom components.
Maintained a legacy Spring service, with integration with SOLR.
2008 — 2011
2008 — 2011
Developed multiple WatchESPN and SportsCenter OTT applications for Samsung and Fire TV.
Primary responsibilities included developing a custom JS framework to provide custom components tailored for d-pad navigation, handling spatial navigation and abstracting away various browser based OTT differences.
Developed an initial WatchESPN FireTV application using Android. This required the development of multiple custom components and integration with REST APIs.
Education
Central Connecticut State University
CS, Math, Economics
2001 — 2004