Thinking

Notes with a point of view.

Capability is already on the other pages. This is personality — short, specific, and opinionated.

Why I build software

I build software because desks still lose hours to work a system should carry — renewals remembered in someone’s head, bulletins re-typed by hand, status discovered when a client calls. Code is the medium. The goal is fewer panicked Mondays.

What makes products useful

Useful products match how people already organize work. They survive the hundredth session. They make failure recoverable. Launch applause is optional; daily use is not.

AI will change workflows, not just code

The interesting AI work is not “add a model.” It is redesigning the path from document to decision — with humans still accountable. Extraction, retrieval, and drafts matter when they remove a step practitioners already resent.

Building for real users

Real users have statutory deadlines, bilingual documents, and no patience for demos. Sit with the desk before choosing a stack. If you cannot name the person who will open the screen tomorrow, you are designing for an imaginary buyer.

UX is part of the system

I treat UX as workflow design and information architecture — not a coat of paint. Matter models, review queues, and education journeys are UX decisions. If the path is wrong, the API and the model cannot save the product. See capabilities.

Technology should reduce complexity

Every new service is a future 2am problem. Prefer fewer moving parts a small team can operate. Edge infrastructure, clear domain models, and honest review queues beat clever architecture diagrams that nobody can run.

Product philosophy → · Engineering notes → · Start here →