Growth minded full stack software engineer with over two decades experience building apps, services, and cloud infra across many languages and technologies. Scales people, teams, and tech. Obsesses over the details.
Overview
12
12
years of professional experience
Work History
Chief Technology Officer
Prophet Town
06.2024 - Current
Managed agency-wide architecture, engineering practices, and defined a common tech stack to prioritize high quality high velocity app development at Prophet Town, a 40-person development agency
Managed relationships with contracting clients and lead development teams ensuring successful on-time delivery of complex technical projects
Sourced and closed new clients for the development agency
Senior Staff Engineer / Head of Developer Experience
Carta
08.2020 - 05.2024
Lead and managed the Developer Experience team within the Platform Infrastructure organization
Designed a self-service Internal Developer Platform to enable Carta's 350 product engineers to effectively utilize the vast array of systems that make up Platform Infrastructure without needing to become experts in cloud infrastructure
Senior Member of Technical Staff
eBay
09.2017 - 07.2020
Built and documented new features such as GitHub, Jira, and PagerDuty integration for Yetibot, used by teams across eBay in our 10,000-person Slack instance
Gave a talk on Yetibot at Clojure/north in Toronto
Ran a Clojure workshop at eBay's San Jose campus
Founding Software Engineer
Lab79
01.2017 - 09.2017
Designed and built foundational infrastructure, Clojure services, and ClojureScript frontend apps for an early-stage Electronic Health Records (EHR) startup in the heavily regulated medical space
Created a powerful schema-agnostic Authorization solution for Datomic Datalog, mirroring the shape of Datomic Pull queries to protect patient data with support for arbitrarily nested collections in Clojure
Heavily utilized Clojure spec to ensure correctness at test and run time, and generate test data for unit tests and property-based tests
Built a real time streaming solution using Onyx to populate ElasticSearch indices with records from Datomic
Built patient EHR application frontend with Om.next in ClojureScript against a Clojure backend service
Designed and built secure HIPAA-compliant cloud native infrastructure on Google Cloud Platform using Kubernetes (GKE), Helm, and Docker
Designed declarative infrastructure as code with Terraform and continuously delivered infra changes in CI via test, plan, apply steps
Secured traffic with TLS between endpoints of every service using HashiCorp Vault to issue on-demand X.509 certificates
Designed a CD pipeline on GitLab with auto-scaling build containers in a GKE cluster to rapidly deliver code to cloud environments
Member of Technical Staff
eBay
08.2013 - 02.2017
Contributed foundational features to a Scala-based horizontally-distributed columnar in-memory data store supporting sub-second, complex aggregations on top of hundreds of billions of listings
Advocated for and demonstrated the use of Scala in a Functional Programming style to ensure correctness and code-reuse
Developed distributed partitioning functionality using ZooKeeper and Ketama consistent hashing
Developed real time coordinated consumption of Kafka streams to support automatic failover while ensuring no messages were lost in a near-real-time ingestion pipeline
Added support for SQL queries using Apache Calcite and compiled queries
Created Ansible automation to manage provisioning, deployment and self-healing of multiple 120-node clusters
Yetibot is a chatops platform written in Clojure. Originally started as a way to learn Clojure in 2011, it served as the entry into the Functional Programming rabbit hole, including ongoing discovery of Haskell, Unison, and Category Theory. Yetibot continues to be actively developed over a decade later.
dec is a library written in Clojure for handling environment config. It builds arbitrarily nested data structures from simple KV strings.
lein-inferv is an opinionated way of inferring a strictly increasing version from the current date, time, and git version for Leiningen projects.
Timeline
Chief Technology Officer
Prophet Town
06.2024 - Current
Senior Staff Engineer / Head of Developer Experience