I design and build systems that are simple, efficient, and easy to extend.

I care a lot about understanding how software actually behaves once deployment, networking, runtime behavior, and operational requirements start interacting with each other.

A lot of systems become difficult because complexity keeps accumulating while fewer and fewer people understand the full picture anymore.

That affects how I approach software, testing, deployment, debugging, and infrastructure. I want systems to remain understandable long after the initial implementation is finished.

I place a lot of value on reproducibility, observability, and verification. I want to understand how a system behaves before it reaches production instead of learning through outages and operational failures.

Most of the work I enjoy sits somewhere between software engineering, distributed systems, embedded Linux, deployment infrastructure, telemetry, networking, and operational debugging.

I primarily work in C#, though the language itself is usually less important than understanding the system being built.