About

I'm a software engineer focused on architecture, complex systems, and long-term maintainability. I've owned complete implementations on multi-person teams and served as the sole developer on large production projects. My work tends to live where product complexity and technical rigor meet.

How I Work

Predictable over clever

I optimize for correctness and stability first. Explicit state, clear data flow, minimal magic. Code should be easy to understand and maintain six months later.

Thinking in constraints

I start by identifying failure modes and second-order effects. Understanding what can go wrong leads to more durable solutions than assuming everything will work.

Clarity over persuasion

My teaching background shows up in how I write, explain, and document systems. I care more about being understood than sounding impressive.

Tradeoffs, not best practices

Every decision has costs. I prefer discussing real tradeoffs rather than defaulting to dogma. Context matters more than convention.

Trust the person closest to the problem

The operator, the customer, the developer. They know their context better than any system can. I build software that gives people real control and clear information, not interfaces that make decisions for them.

Clarity is a form of respect

When someone is navigating a complex system under pressure, every moment of confusion is a moment they might lose trust. Clear design isn't a nice-to-have.

Close the gap between intent and outcome

When someone knows what they want but the tool makes it hard to get there, that's a design failure, not a user failure. I treat that gap as the most important thing to shrink.