Why I’d Never Let AI Rewrite It
Pratap kute

Pratap kute @pratapkute

About: Tech Nerd

Location:
India Pune
Joined:
Nov 25, 2021

Why I’d Never Let AI Rewrite It

Publish Date: Aug 20
0 0

Background – How I Landed the Task

When I first joined Ozone, one of my first assignments was migrating node services to Supervisord. Soon after that, my CTO dropped a bigger challenge on my plate—something more open-ended: "Why don't you build us a tool to validate the configs we generate?"

Now, here’s the tricky part—each client has their own environment, which means their generated configuration files look different. Manually validating them is not very practical. What worked for one client would completely break for another. That’s when we needed custom tooling, tailored for this validation.

And before we dive in—don’t worry, this isn’t going to be a deep dive into technical jargon. My goal here is to share the approach I took to build it, the thinking process, and a few lessons (and scars 😆) I picked up along the way.

My Approach: From Scribbles to CLI

Luckily, my CTO had drafted a rough idea of how this tool should behave. It was going to be a CLI tool— simple, quick to test with and the priorities were:

  1. It should make writing tests painless.
  2. Proper reporting - reporting had to be meaningful
  3. Integration with our in-house tools

The tool’s soul, so to speak, was about detecting misconfiguration via a set of rules and tests.

I began by documenting all the possible scenarios I could think of. Choosing a language was my first real roadblock. I explored Python, Go, shell scripting (yes, don't underestimate them!), and TS. Since our team was heavily invested in Typescirpt already, I settled on that.

What came next was the real grind. I struggled with defining inputs for the CLI. There were so many edge cases to think about that I almost lost track. But once I forced myself to diagram how the data should flow—what talks to what, which component owns which behavior—it finally clicked. That rough diagram became my roadmap.
I leaned on patterns like strategy and behavioral structures, making sure the tool was more future-proof than a “just make it work” hack.

About 2–3 months later, with some support (yep, I wasn’t a one-man army—though I’ll leave you to guess who had my back), I had a working tool. We cut the first release, gave stakeholders a proper demo, and even shared a neat internal doc to help folks use it effectively. That moment—watching people actually run my tool—was incredibly rewarding.

What I Gained From the Journey

1. Real Conversations With a Leadership

One of the best parts was working so closely with my CTO. He’s got this way of looking at problems very differently than most developers. While I’m neck-deep thinking about code dependencies, he’s laser-focused on the outcome: “Does this tool actually solve the problem for stakeholders?” That perspective really stuck with me—it’s not about the fanciest design; it’s about whether the product delivers value.

2. The Feedback Loop

If you’re building something internal, feedback is your compass. It’s not just about adding shiny features; it’s about asking: “Are people actually using this? Is it solving their pain points?” And once you get that feedback—don’t get defensive. Use it. That’s how the tool got better with each iteration.

3. If I Could Rewrite the Tool Today…

Okay, confession: I did use AI tools (including ChatGPT) while building parts of it. They helped speed up the small stuff. But here’s the frustrating part—AI loves adding fluff, skipping business context, and suggesting shiny solutions that don’t make sense in the real world. It’s like asking directions in Pune and ending up in another city because the guy at the corner shop sounded sure.

If you ask me, “Would you rewrite this tool with AI help?” I’d say no. Not because AI is useless—it absolutely gave me short-lived boosts—but because it robs you of the most valuable part: learning how to think through problems yourself.
The “pre-AI” era taught me patience, how to read real blog posts, and how to experiment my way toward an elegant solution. That mindset is what actually made this tool successful.

So yes, I have mixed feelings about AI. I still use it, but carefully—like a seasoning. Too much, and the whole dish tastes off.

Closing Thoughts

Looking back, that project wasn’t just about building a tool for me. It was about learning how to think at a product level, communicate with leaders, take criticism without sulking, and most importantly—trust my own problem-solving instincts. The fact that the tool actually lives on and helps real people? That’s the cherry on top.

Comments 0 total

    Add comment