Shipping LLM Features in 2026: A Checklist I Use Before Every Deploy
A simple, practical checklist for shipping LLM features in real products-covering problem fit, RAG, agents, security, evals, cost, and what to do after launch.
Sharing thoughts on technology, AI, software architecture, and the ideas shaping the future of digital products.
A simple, practical checklist for shipping LLM features in real products-covering problem fit, RAG, agents, security, evals, cost, and what to do after launch.
AI in 2026 didn't kill software engineering. It killed the parts of the job that were mostly typing - and raised the bar on judgment, ownership, and shipping things people can trust.
Actions, use(), useOptimistic, and document metadata — what I actually adopted in React 19 and the gotcha that caught me on each.
RxJS patterns I still use in Angular apps — switchMap for search, async pipe for cleanup, and the unsubscribe leaks I caused before takeUntilDestroyed.
I once marked an entire page 'use client' and wondered why the bundle was huge — a practical guide to Server Components, boundaries, and Server Actions.
How I pick between JWT and sessions — SPA vs monolith, refresh tokens, and the red flags that burned me (localStorage JWTs, no HTTPS, tokens that never expire).
How I use ASP.NET Core's built-in DI — lifetimes, testing, and the captive dependency bugs I caused before I respected scoped DbContext.
How I go from a working Next.js app on my laptop to a container on a DigitalOcean droplet — including the mistakes I made with ports, secrets, and image size.
The .NET + React + Postgres + Redis stack I reach for — what each piece does, what scalable does not mean on day one, and where DI fits in.
Six TypeScript patterns that caught real bugs in my code — satisfies, discriminated unions, as const, and when not to reach for clever types.
Measure first, memo second — when React.memo, useCallback, and useMemo actually help, and when they just add noise.
Images hurt LCP and CLS before AI ever enters the chat — how I combine Next.js Image, lazy loading, and optional AI optimization without over-engineering.
Composition API, reactivity, and when I still reach for Vue over React — with a todo list example and honest tradeoffs.
How I wired up my first LLM chat endpoint in Next.js with LangChain — what worked, what I skipped on purpose, and what I'd do before calling it production.
Not a release-notes dump — what actually changed in my day-to-day Next.js work when 15 landed, and what still trips me up.