Kermit the Frog Taught Me to Code

The origin story nobody asks about but everyone should. 1995? 1994? 1993? 1992? We all have our Eben Visher. My parents family friend, Eben Visher, typed commands into a black screen while I watched like it was sorcery, as he would come over all the time to fix our computers.…

Command Bus Pattern

In 2013, at EVALS, I implemented the command bus pattern for the first time quite heavily. We had a modular backend, and using it as a way to coordinate across module boundaries felt cleaner than injecting services or passing DTOs around. It had intent baked in. Action. For the right…

Engineers, Stop Baking 40-Layer Cakes When a Cupcake Will Do

You're an engineer with a Turborepo monorepo, pnpm workspaces, Next.js, Docker Compose with Kubernetes, Helm charts, GitHub Actions, Terraform, Datadog, and whatever landed on AWS this week. You think you're building something sleek. You're building a 40-story skyscraper to serve a lemonade stand.…

The Architecture I Keep Coming Back To

Twenty-five years of backend services. I've shipped MVC, MVVM, full DDD, hexagonal, clean architecture. All of them work. None of them are wrong. But when I start something new, I keep defaulting to the same structure. SOA with a thin application layer and domain modules. Not because it&…

Anti-Corruption Layer Pattern

ACL. ACL. ACL. You might be using this pattern right now. Following it. Borrowing from it and you have no idea it has a name. At NinjaCat, one of the first tasks handed to me when I joined, was making our MongoDB data warehouse more reliable and scalable. I did…

From Basement Prototype to Nationwide Impact

In 2012, I co-founded a company (https://EVALS.NET) that built a SaaS product out of my basement in California (yes, a basement in California—I know, rare). It started with an idea, a friend dropping by, and a prototype that barely held together. That friend made three phone calls…

DTOs Are Powerful.

Whether you're in C#, Python, Java, PHP, TypeScript, or Ruby, somewhere in your codebase there's a dictionary getting passed around like a mystery grab bag at a white elephant party. "Here's some stuff. Figure it out." Look familiar? public void ProcessUser(IDictionary&…

Your Technical Interviews Suck

You're rejecting candidates because they didn't reverse a binary tree in 12 minutes. On a whiteboard. While someone watched. That's not evaluation. That's a hazing ritual with a MacBook. You want to know if someone can build your CRUD app. So you…

Transparent Accountability: The Core of True Productivity.

In my career, I've had the pleasure of working with and consulting with a lot of companies. As I'm sure we can all relate, there's a demand to improve productivity. As one digs deeper, I quite often encounter a lack of accountability, which stems…

The Ruby on Rails Moment

In software engineering, there's always a moment where the community erupts over some new framework or technology. Sometimes it's genuinely new. Sometimes it's just something old that got rediscovered and paraded around like a returning messiah. 2009, enter Ruby on Rails for me. I…