Writing
Notes on building clean interfaces and dependable backend flows.
Building full-stack AI products with clear state boundaries
April 7, 2026A practical way to think about UI state, conversation state, auth state, and payment state when one product touches all of them.
AI ProductsReactZustandArchitecture
Designing webhook-first product flows
March 18, 2026Webhooks are easiest to trust when they update explicit records, stay idempotent, and match a clear product lifecycle.
PaymentsWebhooksAPIsBackend