Srinath Therampattil

Index — all writing

Blog

Notes on building reliable AI systems, platform engineering, and software architecture — written from inside real systems, not slideware.

01

Harness Engineering: The Layer That Actually Decides Whether Your Agent Works

Same model, wildly different reliability, depending on what's built around it. What harness engineering actually means, the layers a production harness needs, and an implementation-level look at the three real ways to build one — Claude Agent SDK, OpenAI Agents SDK, and rolling your own with LangGraph or a raw tool loop.

agentic-aiarchitectureengineering
02

Loops, Not Prompts: How Codex and Claude Code Finish Real Work Unattended

A prompt gets you one round trip: ask, answer, done. A loop keeps going until a real stopping condition fires. How Codex CLI's /goal and Claude Code's /loop actually work, and the contract that makes it safe to walk away from either one.

agentic-aiautomationengineering
03

Why a 95% Reliable Step Does Not Make a 95% Reliable Agent

Every step in your agent workflow tests fine in isolation, and the whole thing still fails more than you'd expect. The reason is multiplicative, not mysterious — and once you see the math, it changes how you design the workflow.

agentic-aireliabilityarchitecture
04

Your Agents Open PRs Faster Than You Can Review Them

When a few agents are opening pull requests all day, review becomes the bottleneck. The strategies teams ahead of this are using — automate the mechanical, AI first-pass review, stacked PRs, humans on intent, verification upstream — how well they work, and how to set them up.

code-reviewai-agentsengineering
05

I Write Far Less Code Than I Used To. The Job Got Harder.

The metaphor went from autocomplete to agent, and the engineer's job went with it — from writing code to directing and checking the things that write it. What actually changed, why the productivity isn't automatic, and the skill that matters now.

ai-nativeagentic-aisoftware-engineering
06

Two Coding Agents, One Project Brief

I run Claude Code and Codex over the same repo, and each wants its own instructions file. Maintaining two by hand means they drift, and a stale project brief is worse than none. The fix is boring, and it's a symlink.

claude-codecodexai-tools
07

How the Creator of Claude Code Actually Uses It

Boris Cherny built Claude Code, and the way he uses it isn't about clever settings. It's about running it like a small team instead of a chat window. The handful of habits behind that, and the ones I've adopted.

claude-codeai-toolsproductivity
08

Your AI Tools Start From Zero Every Time. They Don't Have To.

AI coding tools forget everything between sessions, so they repeat mistakes and relearn your conventions over and over. Here's the learnings loop that fixes it, and exactly how I wired it into Claude Code on this blog.

ai-toolsclaude-codeknowledge-base
09

Putting AI in Front of a Platform: Lessons from Real Systems

What I've learned putting LLMs and agents on top of a Salesforce platform, where the data has rules you don't get to ignore and a wrong answer lands in the system the business runs on.

platform-engineeringenterpriseAI
10

Designing Reliable AI Agents on Top of Enterprise Platforms

An agent that can change records on a system of record is powerful and risky in equal measure. The guardrails I rely on — acting as the user, idempotent actions, a narrow toolset, human checkpoints, and real logging — to let one run safely.

agentsenterpriseplatform-engineering
11

Building Reliable LLM Features: What Production Actually Demands

An LLM feature is easy to demo and hard to trust. These are the practical habits — validating output, measuring quality, versioning prompts, and planning for wrong answers — that I rely on to make one hold up with real users.

LLMsreliabilityproduction
12

Non-Functional Requirements for AI Systems: What Staff Engineers Should Specify

Most teams spec what an AI feature should do and skip how well it has to do it. The non-functional requirements — accuracy, latency, cost, fallback, observability, governance — that decide whether it's actually production-ready.

AIarchitecturestaff-engineer
13

How I Evaluate LLM Output Without a Ground-Truth Dataset

You almost never have labeled data when you ship an AI feature. A practical way to measure quality anyway — a small hand-built set, plain assertions, a checked model-as-judge, and the production signals you already have.

LLMsevalstesting