Stop Waiting. Start Anyway.

March 17, 2026 · 4 min read

There's a specific kind of discomfort that comes with shipping code you're not sure is fully yours.

A few weeks ago I pushed a feature to production. It worked. The PR got merged. Nobody flagged anything. By every measurable standard, it was fine. But the whole time, from first commit to final deploy, I felt like a fraud. Like I'd gotten away with something. The AI helped me move faster than I could have alone, and somewhere in that speed I lost track of where the tool ended and I began.

I've been sitting with that feeling since. Not because imposter syndrome is new, especially not for junior devs, but because AI has made it louder in a way I wasn't prepared for.

· · ·

The readiness trap

Here's what I've noticed: the more capable my tools get, the more I question my own capability. Which is a strange kind of math. I'm shipping more, building faster, learning constantly, yet somehow feeling less legitimate than I did a year ago when I knew and did less.

I think it's because readiness has always been my benchmark. I'll freelance when I'm ready. I'll call myself an engineer when I'm ready. I'll coach someone when I'm ready. Readiness felt like a reasonable bar. Responsible, even. But readiness is a moving target. Every time I get close, the bar moves. There's always another thing I don't know, another gap I can find if I look hard enough. And I'm starting to think that's not caution. It's just a more sophisticated version of staying stuck.

· · ·

I've been here before

The first time I prepped for a competition, I was not ready.

I didn't feel ready. My coach didn't tell me I was ready. I just decided I was doing it anyway and figured out the rest in real time. The prep was hard in ways I couldn't have anticipated. I stood on stage before I felt stage-ready, which is the only way you ever get stage-ready.

Nobody hands you a certificate that says you've crossed the threshold. You just go. And then you learn things you couldn't have learned any other way.

Building software isn't that different. Freelancing isn't that different. The first client, the first site you build for someone who's paying you, you're not going to feel ready for it. You're going to feel exactly like I felt pushing that PR. A little like a fraud. A little like you got away with something.

That feeling doesn't mean you're not ready. It might just mean you're doing something real.

· · ·

Confidence isn't the absence of fear

I want to push back on something. There's this idea that confident people don't feel scared. That if you were really good enough, you'd just know it and move forward without all the noise.

That's not confidence. That's either arrogance or inexperience.

Real confidence — the kind that actually holds up — isn't the absence of doubt. It's doing the thing while the doubt is still there. Shipping the code anyway. Sending the pitch anyway. Stepping on stage anyway.

I'm good at what I do. I also don't know everything. Both of those things are true at the same time, and they don't cancel each other out.

· · ·

So what are you actually waiting for

If you're waiting to feel ready before you freelance, start the business, make the career change, take on the client, I want to ask you something, honestly: what does ready actually look like? Can you describe it? Does it have a date attached to it?

Or are you just waiting?

Because waiting is also a choice. It's just a quieter one, so it's easier to dress up as patience or prudence or "not yet." But the version of you that's ready doesn't exist yet. She gets built in the doing, not before it.

Start anyway.