How I got here
I started my career as a backend engineer at a payments company, spending three years deep inside high-volume Rails applications and the PostgreSQL schemas that supported them. The scale forced a discipline around database design and query performance that I've carried into every engagement since.
After that, I joined a Go-first infrastructure team building internal tooling for a logistics network. Writing Go every day reshaped how I think about concurrency, binary size, and the joy of deploying a single statically-linked binary. I began reaching for it whenever throughput and operational simplicity mattered more than convention.
My Perl background is unusual but genuinely valuable. I spent over a year embedded with a financial services firm maintaining critical reporting systems written in Perl years before I joined. You learn to read intent in code written by people who are long gone, and to move carefully through systems where the cost of a bug is measured in dollars per second.
On the product engineering side, I've shipped React.js applications for consumer dashboards and React Native apps across iOS and Android. I'm not a front-end specialist, but I understand component architecture, state management trade-offs, and the boundary between the mobile shell and the API layer — which is often where the most interesting problems live.
I moved to independent consulting because it gives me the breadth to keep solving hard problems across different domains. I work with a small number of clients at a time so I can stay genuinely close to the code and the team.