Software engineering and AI.
A compact index of the two big areas covered across the blog and topic pages.
Foundational software engineering
The software engineering base that supports long-term maintainability, reliability, and delivery discipline.
System design
Boundaries, service composition, and architecture decisions that keep software maintainable.
Cloud and platform
Deployment choices, resiliency, and operational patterns for real-world environments.
Data and storage
Relational and document models, query design, and the trade-offs behind data access.
Delivery engineering
CI/CD, observability, release discipline, and the routines that make shipping predictable.
AI engineering
The AI-specific work I write about most often, with an emphasis on practical delivery and production safety.
LLM integration
Provider APIs, response shaping, fallback strategies, and practical service boundaries.
Prompting and UX
Prompt design, user expectations, trust cues, and human-in-the-loop interactions.
Evaluation and guardrails
Testing, regression checks, and control points for safer AI behavior in production.
AI automation
Reusable patterns for automating workflows without making the system brittle.