Hi, I'm John

I'm the founder of Gem State Digital, based here in Boise, Idaho. I build software for a living, and I've been doing it long enough to be honest about what works, what doesn't, and where AI actually earns its place in a system.

My career arc went from software tester to principal engineer and tech lead. That path matters to how I work: I learned to break things before I learned to build them, and I never lost the habit of asking what happens when a system meets real load instead of a demo.

What I've shipped

I've delivered high-throughput software to Fortune 500 companies — systems where correctness and uptime aren't features, they're the baseline. That work taught me to design for the constraint first and the elegant solution second.

Alongside that, I've consulted across a range of industries, each with its own rules and its own definition of "good enough":

  • Legal software
  • Banking
  • E-commerce
  • Grocery
  • Construction

Different domains, same discipline: understand the real-world problem, then build something that stays understandable under operational pressure.

Helping organizations ship their first AI workflows

A lot of teams know they want AI in production but haven't crossed the gap from experiment to dependable system. That's a gap I've helped many organizations cross — getting their first AI workflows into production safely, with the guardrails and evaluation that make them trustworthy.

The hard part usually isn't the model. It's the engineering around it: tool-use patterns, behavior steering, evaluation, and knowing where a human belongs in the loop. I work in Python (FastAPI, typed clients) with LangChain and LangGraph for agent design and orchestration, and AWS — Lambda, API Gateway, S3, DynamoDB — with Terraform for the infrastructure underneath. I lead with the same question every time: is AI the right tool for this, or are we reaching for it because it's interesting? Sometimes the honest answer is a state graph, a typed API, or plain old code. I'll tell you when that's the case.

Work you can actually inspect

I'd rather show you a working system than a slide about one, so I publish engineering notes and hands-on projects you can dig into yourself. A few examples:

  • A multi-agent framework built on LangGraph, with persistent per-agent workspaces, custom tools, and scheduled tasks.
  • A behavior-steering middleware pattern for keeping long-running agents on track at runtime.
  • An LLM model router that sends simple queries to lightweight models and harder ones to advanced models via conditional routing.
  • A multi-model truthfulness evaluator that gathers evidence before it judges.
  • A type-safe Python API client with full validation and high test coverage.

These are demos and experiments, not client work — but they're real, they run, and the code is there to read. I'm explicit about what's production-ready and what's a sketch.

Not every project needs AI

The other half of what I do is straightforward: affordable traditional and legacy software, delivered by AI-augmented engineers. If you need a Java/Spring Boot service maintained, a backend built, or a static site shipped on AWS, that's work I take just as seriously — and AI tooling lets me deliver it faster and cheaper without cutting corners on quality. Sometimes the right tool isn't a new AI workflow; it's a well-built conventional system. I'm happy to build either.

Let's talk

If you've got an AI experiment stuck short of production, that's exactly the gap I help close — and if you just need solid conventional software built well, I do that too. Take a look at the projects to see how I work, then reach out and tell me what you're trying to ship.