Every engineer knows the deal with technical debt. You take a shortcut to ship something today, and you pay for it later. The interest compounds quietly until one day a simple change takes a week, and nobody remembers why.
I think I’ve been taking on a different kind of debt.

The job got bigger
Like a lot of specialists right now, I’ve been stretching into full-stack work. The industry decided everyone’s a builder, and AI is how a lot of us are bridging the gap. I wrote about that trend back in May. I didn’t expect to be writing a follow-up from my own experience, but here we are.
I spent years getting good at design systems. Tokens, components, CSS architecture, the unglamorous work of keeping a UI consistent across a product. Now I’m also reading git diffs full of backend changes, and some days my first thought is still, okay, what am I looking at?
The work changed, and I’m changing with it. That’s the world we work in now. Specialists are turning into generalists whether we planned for it or not, and I’d rather get genuinely good at it than spend my energy wishing it were different.
The tickets still close
AI is a big part of why this works. I use it every day. I pick up a ticket in a part of the codebase I’m still learning, and with enough back and forth, it ships. Tests pass. Review goes fine. The cycle closes.
I’ve been through a few of those cycles now. On paper, it looks like I made the jump, and in a lot of ways I have.
What I want now is for the depth to catch up with the output.
Shipping isn’t learning
Here’s the debt. Every ticket AI helps me close can be a loan against knowledge I haven’t built yet. The feature works, and it’s been tested and reviewed. But I couldn’t have written all of it from scratch yet, and there are parts of the diff I understand less deeply than I’d like.
Technical debt at least leaves evidence. The code is still sitting there, waiting to be refactored. Skill debt is sneakier. The work itself is solid, so nothing about it points to the gap. Tests and code review check the code, and they do that well. They’re not built to measure what I learned while writing it. That part’s on me.
In May I wrote that “AI’s output quality is bounded by the reviewer’s ability to evaluate it.” I was writing about teams, but it applies to individuals too. It’s exactly why I want that depth for myself.
Where the reps come from
I’ve been taking courses. I do the exercises, I follow along, and it mostly makes sense in the moment. It’s just slower to stick than CSS and frontend were.
I think I know why. I came to frontend from a design background, and I didn’t learn CSS from a course. I learned it from years of breaking layouts and fixing them. Thousands of small decisions, most of them wrong the first time. Everything I’m good at, I got good at through repetition.
Programming works the same way. You get better by struggling through a problem, getting it wrong, and figuring out why. And the struggle is exactly the part AI is happy to take off my plate, if I let it. It’s like paying someone to go to the gym for you and wondering why you’re not getting any stronger.
In The AI Productivity Paradox, I worried about junior developers leaning on AI before they’ve built any instincts. Turns out it’s good advice at any level, including mine.
Am I doing this, or watching it?
I know what being good at something feels like. When AI hands me a component that breaks a token convention or reinvents a pattern we already have, I catch it immediately. That instinct took years to build, and it’s real.
Backend work doesn’t feel like that yet. I can’t always tell if I’m getting better at it or just getting better at prompting. When the work ships either way, there’s no signal to tell the two apart. So the question I keep asking isn’t “can I do this job?” It’s “am I doing it, or is AI doing it while I watch?”
I’m not anti-AI. It’s the reason I could jump in at all instead of spending six months ramping up. But “the work got done” and “I got better” used to be the same thing. AI can quietly split them apart, and I think that’s worth noticing.
Paying it down
Here’s the thing that keeps me optimistic. This is the industry now, and AI isn’t going anywhere. But I’ve done this before. I went from design to frontend once already, and it was slow and messy and it worked. The reps added up. They just took time. And some days it’s even kind of fun being new at something again.
So that’s the plan. Keep taking the courses. Ask AI to explain before I ask it to write. Treat every ticket as a small payment on the debt instead of another loan.
If your role has been stretching into new territory, and AI is helping you through parts you don’t fully understand yet, you’re not the only one. Shipping the work doesn’t mean you’ve caught up yet. But you’ve learned new things before, and you can do it again. Debt gets paid down. One ticket at a time.
Leave a Comment