
(mostly it's on the internet)
I build, analyze, and design systems. From software and data architecture to user interfaces and visual compositions. My goal is to find the fundamental principles that create clarity and efficiency, and apply them to solve complex problems. This site is a collection of that work.
The Why
Software exists to serve humans, not the other way around.
As technicians we can get lost in layers of optimization, abstraction, and efficiency, forgetting the end user on the other side of the screen. Great systems are not just fast, elegant, or technically sophisticated; they are empathetic user power-ups. They anticipate needs, respect attention, and enhance human capability rather than replacing it.
Whether it's a user interface an API or an AI, if it doesn't make a human's life better, it's not worth building.
The How
The more complex a project is, the more likely it is to fail.
The Build Small Things methodology eliminates Big Project Syndrome where costs overrun and deadlines are missed. By breaking work into atomic units, we escape the doom spiral of slowness. We ship constantly. We integrate consistently. We build systems so fluid and resilient that bureaucratic rituals become irrelevant.
Build Small Things is also the foundational principle that explains why software succeeds or fails. Every failure can be traced to complexity. Every success can be traced to simplicity.
Chief Technology Officer
Challenge: Build a proprietary technology platform to enable rapid, de-risked market expansion.
Core Achievement
Director of Engineering
Challenge: Scale the consumer platform and engineering organization to meet explosive global demand.
Core Achievement
Chief Technology Officer
Challenge: Engineer a reliable, secure financial platform to handle high-volume transactions and complex data integrations.
Core Achievement

RAG-Powered LLM Chat
Chat with my blog. Ask questions about my posts, my technical choices, or anything I have written. Answers are grounded in my resume, case studies, blog posts, and site content.

Single Bit Communication
An experiment in using a simple lightbulb for high-speed, low-latency communication. Exploring how the most basic binary state can create meaningful interaction across physical and digital spaces.

Human-Computer Interaction & Ergonomics
A physical installation exploring communication constraints by distributing 101 keyboard keys throughout a building via 700 meters of wire. An investigation into the impracticalities of digital interaction.

Here is how I used Nuxt, Markdown, and Vertex AI Search to turn my blog into a queryable LLM knowledge base that actually knows what I wrote.

LLMs' attempts to play chess are hilarious; they blunder queens and move illegally. Here's what this tells us about when to use LLMs to solve complex software engineering tasks, and when to absolutely not.

LinkedIn is using your data to train their AI. I decided to beat them to it. Here is how I used synthetic data generation to train a Llama 3.2 ML model on my own professional persona for pennies.
"My goal is to mentor founders and technical leaders to build self-sustaining organizations, de-risking the path to scale."
- Guest Lecturer, Emeritus CTO Program at Wharton Executive Education & Cambridge Judge Business School.