← Back to Blog
AI CODING · 6 min read · Apr 12, 2026

How Claude Code Changed the Way I Debug

I used to spend hours reading stack traces. Now I pair-program with an AI that reads them faster than I do — and explains them like a senior dev would.

It started with a stupid bug. A null pointer in a Kotlin service that took me three hours to track down — not because it was hard, but because I kept looking in the wrong place.

That night I opened Claude Code, pasted the stack trace, and it pointed straight at the offending line in under ten seconds. More importantly, it explained why it was happening: a nullable field I'd marked as non-null in the data class, propagated through three layers of mapping.

The shift in how I work

I haven't stopped debugging myself. But I've started using AI the same way I'd use a rubber duck — except this rubber duck pushes back, asks clarifying questions, and occasionally suggests a better architecture.

The pattern I've settled into:

1. Write the feature first, alone. No AI in the first pass.

2. When stuck, describe the problem out loud (to Claude Code) and let it reframe it.

3. Use it to review my own PRs before I even open them.

// Before: I'd have missed this
const result = data.items?.find(i => i.id === targetId)
// Claude flagged: what if items is an empty array vs undefined?
const result = (data.items ?? []).find(i => i.id === targetId)

What it doesn't replace

Understanding the system. Architecture decisions. Knowing which abstraction to reach for. The AI is a great pair, but it doesn't carry the mental model of your whole project the way you do.

The trick is learning when to reach for it and when to sit with the problem yourself. That's still a human skill.

AIClaude CodeKotlinDebugging
🧑‍💻
Neil Monzales
Backend Engineer · Nature lover · Based in the Philippines
GitHub

Get in touch.

Open to backend roles, interesting side projects, and good conversations about tech or the outdoors.

FIND ME ON
GitHub
@nljms
Email
hello@neil.dev
LinkedIn
in/neilmonzales
Twitter / X
@nljms