Senior Software Engineer
- San Francisco, CA
I am a software engineer who has transitioned to programming over the last several years from a marketing and communications background, through self-study and on-the-job learning. I enjoy writing tools that help developers do their work more efficiently.
Recent Work Experience
Developing web applications for Yardzen, the world’s leading online landscape design platform.
- Built infrastructure in GCP to support budget tool that enabled clients to estimate cost of landscape design. Tools used: Terraform, CloudSQL, Hasura Cloud.
- Built data pipeline that allowed designers to seamlessly render Sketchup designs. Tools used: Terraform, GKE, Go
Senior Software Engineer
Provided DevOps support for enterprise teams that build Kong, the maintainer of the world’s most popular API Gateway.
- Implemented nightly tagging system for Jenkins builds of Kong Manager, shipping the master build as a self-contained binary that was less tightly coupled to downstream build environments
- Created an automated testing infrastructure to simulate the end-to-end user experience of posting live data to Kong’s Service Map feature and seeing it populate in Kong Manager
- Designed and implemented a pattern for Jenkins infrastructure to ensure that local environments have greater parity with what’s in Jenkins, making builds easier to test locally and debug
- Wrote health checks that alert Slack as soon as the master branch of a given GitHub repo becomes unstable, reducing response time to fixing issues with the build/dependencies
- Wrote Docker Hub monitor (a Go Lambda function, monitored by Cloudwatch), which notifies Slack when the latest development Docker image of the enterprise version of Kong, a Kong Manager dependency, has been updated; reduces ambiguity when debugging downstream build failures
- Wrote a Go microservice running in Docker that serves as the infrastructure for customer-facing and internal emails, using statsd/Grafana, PagerDuty alerts tied to statsd error hits, and SQS FIFO queues.
- Created Chef-managed build server and Jenkins processes to develop and deploy a microservice that handles syncing of an enterprise roaming client that serves millions of DNS requests each day
- Onboarded new engineers, familiarizing them with our development process
- Wrote or improved code that helped with critical business processes, including:
- tools to automate free trial signups, import networks for Managed Service Providers, and onboard customers;
- our customer-facing API, a PHP client for Merchant E-Solutions, and an offline process that integrates our customer usage statistics with Gainsight.