Welcome to my new blog! After several years of having my resume as the main content on my GitHub Pages site, I’ve finally decided to give it a pulse — a place to share thoughts on software engineering, mobile development, LLM coding tools, and what the future of technology looks like on the other side of the AI revolution.
Over 10 years across companies like Amazon, DoorDash, and INRIX, I’ve picked up a lot of lessons worth writing down. Some technical, some career-oriented, and some just genuinely surprising. This is one of those.
The Night I Let Claude Cook (While I Actually Cooked)
For years, the end of my workday had an invisible string attached to it. I’d close my laptop, but part of my brain stayed at the office — waiting to see if my merge made it into the nightly mobile release build. More often than not, it didn’t. Merge conflicts, flaky CI, build failures. The kind of thing that turns a relaxing evening into a tab-switching anxiety spiral.
Then I started leaning on LLM agents — specifically Claude with MCP — and everything changed. Instead of hovering over a PR like a nervous parent at a school play, I started giving the agent explicit instructions to babysit it for me: watch the CI, resolve conflicts as they come up, and keep things moving. Then I’d walk away and actually make dinner.
The first time it worked seamlessly, I was genuinely surprised. Not because the technology is magic — but because the freedom it unlocked felt disproportionate to the effort. A few well-crafted instructions, and suddenly I had my evenings back.
The Catch: Agents Without Guardrails Are a Loaded Gun
Here’s what nobody puts in the blog post headline: an unsupervised agent is only as good as the instructions you gave it — and instructions are never perfect.
Left unchecked, a Claude Code agent can and will:
- Make opinionated refactors you didn’t ask for
- Resolve a merge conflict “correctly” in a way that subtly breaks business logic
- Go down a rabbit hole of cascading fixes that drift far from the original intent
- Commit changes that pass CI but fail the smell test
The risk isn’t that the agent is reckless — it’s that it’s confidently helpful, which can be just as dangerous in a complex codebase. Without tight constraints, clear scope, and a human reviewing the output, you’re not delegating work — you’re just deferring a surprise.
Why It’s Still Worth It
That said, the trajectory here is undeniable. The key is learning to work with the agent, not just through it:
- Explicit context beats vague prompts. The more precise your instructions — branch names, file scope, acceptance criteria — the less room for the agent to improvise.
- Staged trust. Start with low-risk tasks (resolving trivial conflicts, updating dependencies) before handing over anything with real blast radius.
- Review like it’s a junior engineer’s PR. Because in a lot of ways, it is. Smart, fast, eager to please — and occasionally missing the forest for the trees.
Done well, this isn’t just a productivity hack. It’s a preview of how software engineering teams will operate in the next few years — fewer humans doing rote coordination work, more humans doing the thinking that actually requires judgment.
The LLM revolution isn’t coming. It’s already here, running in the background, waiting on your CI pipeline.
Check out my resume or say hello on LinkedIn. More posts coming soon — stay tuned.
Comments