Life is full of irrational fears. Things you know, deep down, make no sense, but they scare you regardless and there's not much you can do about it. They become part of you and shape how you act. No shame in admitting them.
Work-wise, I have one that has always made me deeply nervous. And when I say nervous, I mean sick to my stomach, unable to focus on anything else, worrying until it's over. My nemesis is deploying to production.
Now, if you're a seasoned developer, you'll know this isn't entirely irrational. You know better than I do how many ways a production deployment can go wrong. You can break something. You can introduce a vulnerability. The feature you're shipping could be bad enough that users are screaming for hours. It feels like everything can go wrong the moment you deploy.
I've worked at companies where deployment was rudimentary and frankly dangerous. I wouldn't recommend copying hundreds of files over FTP and hoping for the best. Thankfully those days are behind me, and I now work somewhere more sensible, with excellent devops and robust pipelines for deployment and validation.
Does that cure the fear? No.
On our team, the assigned SDET usually handles the actual deploy. They know the E2E tests better than anyone, they work on those pipelines daily, they understand all their quirks. As you can imagine, I've loved this arrangement from day one. Someone else pressing the merge-to-main button for me? Sign me up.
I managed to go a whole year without having to do it myself. And all that successful avoidance came back to bite me.
Avoiding something like the plague doesn't make the fear disappear. It just inflates it. It becomes a giant balloon of worries and unknowns, all the ways it could go spectacularly wrong in your head. On a practical level, you never get exposed to it, so you never learn how it actually works. You never pick up the quirks every system has, or the procedures so ingrained in the company that most people take them for granted. They aren't obvious at all if you've spent a year keeping your distance.
This setup works fine, right up until you genuinely need to deploy something to hit your roadmap and the SDET you work with is off.
Panic.
First reaction: no. Not deploying. I'll delay it, make something up, and wait until my colleague is back. I'm not going anywhere near that mayhem.
That lasts a few seconds at most. For one, I could never be that irresponsible. But more than that, the mechanism that kicks in whenever I spot a gap in my knowledge, the need to fill it, always ends up beating the fear. You come face to face with it and know, deep down, that it's time to finally make sense of the thing.
At that point the rational, experienced part of my brain takes over. I message an SDET and ask for the procedure. I come clean: I've never deployed anything, I know nothing about the best practices, and all I do know is that our app serves millions of people and I really don't want to be the one who breaks it. That leads to a quick call, some notes, and the growing certainty that I'm making this far bigger in my head than it needs to be.
Then the moment arrives. The only real action required is clicking Merge. I know it's simple. But I've been burned enough times that I'm genuinely on edge. I go for it. The first steps pass, and all I can do is watch the painfully slow process crawl along. Seconds feel like hours.
I reach the E2E section. Almost there, and then some unrelated tests fail. I double-check. Just a flaky pipeline. My heart rate settles, I fix it and rerun. Green. Progress. Deployed.
I have no idea how long it took, or how much energy I burned getting there. But the feature is live and it works. All good.
Afterward, I thought about it a lot. Was it as bad as I'd imagined? No. Honestly, it was far less dramatic than I've made it sound here, but I had to keep you entertained. Am I glad I did it? Of course. I learned something new, and that's the whole point. Have I conquered the fear? Not really. The worry is still there, and the discomfort won't vanish easily. But for something this critical, maybe that's not such a bad thing.
