Notes on building software, scaling teams, and shipping product.
.jpg%3F2026-07-14T18%253A30%253A14.918Z&w=3840&q=100)
The industry turned platform engineering into a hiring decision. It isn't. The minimum viable platform I run on Keaz across twelve services — no platform team — and when to finally hire one.

A webhook handler that does real work inline is a data-loss bug waiting for a traffic spike. The durable pattern I run on Keaz — persist, queue, process idempotently — and where it breaks.

AI raised throughput and cut stability in 2026. The four delivery capabilities that let a five-person team absorb AI-generated code without an incident spike — no platform team required.

The 2026 fractional CTO isn't an advisor — it's a senior operator plus an AI agent team. The DORA data behind the shift, and five questions that separate operators from part-time advisors.

A backend budget-enforcement layer for AI products: meter per-user token spend, step models down, and degrade gracefully so a vendor credit cap never takes your product offline.

The tiered memory architecture behind chays.ai — core, recall, and archival layers that summarize context instead of re-sending it, and the token math that makes it survive the Agent SDK cap.

Anthropic moves the Claude Agent SDK to a separate metered credit pool on June 15, 2026 — a five-step rearchitecture I'm running on chays.ai and Freya Coach before the cap kicks in.

Why I picked Docker Swarm over Kubernetes for Keaz's twelve services in production — the three signals that say switch, and the budget math that says "not yet."

Postgres row-level security, the seven footguns that leak tenant data, and a seven-point checklist before you ship your next multi-tenant feature.

Five guardrails for wiring Claude Code into a real SaaS codebase, where the loop actually breaks, and what it does to a CTO's planning math.

A four-question decision tree for founders weighing a fractional CTO against a senior engineer hire — with cost ranges and timing.