About
Our purpose is not to “write code”, but rather add value.
Platform and infrastructure engineer with 15+ years shipping software and growing teams. I build the CI/CD, container, and data platforms other teams ship against — Kubernetes, Ruby on Rails, Go, Redis at scale.
Open Source Contributions
A selection of my open source work, grouped by the kind of contribution — the projects I help maintain, the changes I’ve authored and merged upstream, work I have in review, and bugs I’ve reported and diagnosed.
Maintainer
powerhome/redis-operator
https://github.com/powerhome/redis-operator
A Go Kubernetes operator that manages highly-available Redis with Sentinel-based automatic failover. I’m the de-facto maintainer: roughly 40 merged pull requests and the release owner from v1.8.0 through the current v4.4.1. I added HAProxy-based client routing, master/replica failover healing that disconnects clients from demoted nodes, and ongoing Kubernetes-version support. Adopting and maintaining this operator let my team replace commercial Redis Enterprise licensing with an internally-run, open-source alternative.
Authored and Merged Upstream
HAProxy
https://github.com/haproxy/haproxy
The reliable, high-performance TCP/HTTP load balancer. I authored and merged an init-state server-configuration feature (commit 50322df), closing a years-open issue and fixing a Redis-failover bug that had caused production incidents. The fix benefits every HAProxy user.
Shopify/shipit-engine
https://github.com/Shopify/shipit-engine
Shipit is a deployment tool that makes shipping code better for large
teams who build and deploy GitHub repositories together. As an outside
contributor from 2019 to 2021 I merged 22 pull requests, spanning domain
modeling (elevating the repository to a first-class concept, renaming
PullRequest to MergeRequest) and maintenance-grade internals (task
timing on a monotonic clock, git-cache-corruption recovery). I was the
primary author of its “Review Stacks” feature (PR #1102): ephemeral,
full-stack preview environments spun up per pull request.
derailed/k9s
https://github.com/derailed/k9s
A popular terminal UI for managing Kubernetes clusters. I contributed the Gruvbox light and dark skins (PR #1088).
percona-xtradb-cluster-operator
https://github.com/percona/percona-xtradb-cluster-operator
Percona’s Kubernetes operator for XtraDB Cluster. I contributed a fix merged upstream (PR #521) that resolved a crash when the operator pod started without a HAProxy PodDisruptionBudget.
rubyforgood/mutual-aid
https://github.com/rubyforgood/mutual-aid
Mutual Aid is when people get together to build community by voluntarily sharing resources with each other. Mutual Aid groups are more concerned about local resiliency than global campaigns, and prefer solidarity before charity. I contributed 10 merged pull requests, largely hardening the Docker-based development environment for new volunteers.
In Review
basecamp/kamal
https://github.com/basecamp/kamal
Basecamp’s tool for deploying web applications anywhere. I’ve proposed a SOPS secrets adapter so Kamal can pull deploy-time secrets from a SOPS-encrypted file (PR #1906), along with the accompanying documentation (kamal-site PR #201). Both are open and under review.
Reported and Diagnosed
rubocop/rubocop
https://github.com/rubocop/rubocop
I reported a correctness bug where a Style/InvertibleUnlessCondition
autocorrection could silently break application logic (issue #11800).
percona-xtradb-cluster-operator
I reported that the example configuration ships a sourceRetryCount that
diverges from MySQL’s default and breaks replication on routine source
restarts (issue #2523).
PagerDuty/terraform-provider-pagerduty
I reported a “product limit exceeded” failure when updating a service’s escalation-policy reference (issue #1025).
Side Projects
resque-alive
https://github.com/indiebrain/resque-alive
A Kubernetes liveness probe for Resque, written in Ruby, so a stuck or dead worker is restarted automatically rather than silently draining the job queue.
asdf-guile
https://github.com/indiebrain/asdf-guile
An asdf version-manager plugin (Shell) for installing and switching between GNU Guile versions.
.files
https://github.com/indiebrain/.files
My personal dotfiles: a modular Emacs Lisp configuration and shell setup, organized with GNU Stow and still actively tended.
futurist
https://github.com/indiebrain/futurist
A Ruby take on futures and promises, inspired by Celluloid’s block-based futures, that transparently backgrounds work by forking processes.
Talks
Git Internals
https://github.com/indiebrain/talks/blob/master/git_internals/git_internals.org
Explains the inner workings of git, and sheds some light on how the internal structure of git as a data store shapes its user interface.
Git Workflow
https://github.com/indiebrain/talks/blob/master/git_workflow/git_workflow.org
Treats version-control history as project metadata: a workflow built for reason-ability (what, exactly, is in production?), communication, and a semantic commit history that records the intent code alone can’t.
Release It!
https://github.com/indiebrain/talks/blob/master/release_it/release_it.org
A brief, messy history of releasing software — from ENIAC and the 1968 “software crisis” to how modern practices arrived at continuous, lower-risk delivery.