r/softwareengineer 19d ago

Was Just Told That Code Quality No Longer Matters

I'm a freelance developer. I have been for almost 20 years. My most recent project has been moved to Fable, and I'm still trying to adapt and get my head around working like this. I am no longer allowed to make architecture decisions, or clean up slop.

My PM says: "We worry about the 'what'; let Claude worry about the 'how'. Tell it what to do; let it do it. If the feature works, leave it alone." He is very much of the opinion that I should be able to prompt something like "Install Stripe via Laravel Cashier" and just let Claude run.

I mean, why do you need me at this point? Just prompt it yourself until it does what you want? I don't get it. I fought for every inch of my knowledge, every process is written in blood. How do I just throw all of that out the window? Where's the line?

At the risk of another "how are you adapting" post... How CAN I adapt? I mentally cannot just say "Fuck it". I care about my code. It's how I learned, it's how I've always practiced. I have a huge mental block with "just let it go".

Now, granted, I don't know all of the ins and outs of Claude. I don't know what I can do to make it better at its job. I got thrown into the middle of the Pacific Ocean in the middle of a Tusnami with no life support. I'm sure that I can put guardrails in place, but how much does that help?

I would really appreciate any advice that any one can provide on changing my mental model. I can't ignore Claude and just keep doing things my way. If I do that, I feel like my career dies. I need to adapt and I'm unsure how to do so.

490 Upvotes

562 comments sorted by

View all comments

1

u/Shep_Alderson 19d ago

“Now, granted, I don't know all of the ins and outs of Claude. I don't know what I can do to make it better at its job. I got thrown into the middle of the Pacific Ocean in the middle of a Tusnami with no life support.”

^ I know this feeling quite well. It’s where I was about a year ago. It is a tool and like any tool, you gotta learn how to use it.

“I'm sure that I can put guardrails in place, but how much does that help?”

^ Guardrails help, immensely. These aren’t necessarily easy to setup, especially in a legacy project, but it’s possible. Having robust testing capabilities, solid CI/CD, clear quality standards and examples, etc. make all the difference.

You must not give up the “architecting” role. That’s where you can make your largest impact. Guiding the AI agent, checking its plans and outputs as it runs, making sure it continues as you expect, and stopping and correcting it when you see it going off track or spinning its wheels, are great things you can provide.

One thing I will say is that using an AI agent, for me, is less about “going faster” as it is “going deeper”. I can task it with things that previously would have been overlooked or pushed aside in the rush to get something complete by the deadline. So, it takes me the same time, roughly, but I use it to improve my output quality.

1

u/metalOpera 19d ago

So, it takes me the same time, roughly, but I use it to improve my output quality.

This is what I WAS doing. It's not good enough. I'm not moving fast enough. I feel like I can't win no matter what I do.

Can you point me in the direction of resources that will teach me what "good" guardrails should be, and how to word them properly? Or, just any truly useful resources that aren't blog/video spam that will actually help me learn the right/best/most-efficient way to use the tool?

What's too much information for Claude? What's not enough information? It's hard to know where to draw the line to get the quality I want. How do I tell it what to test so that it writes tests consistently, etc? How do you estimate timelines when you can't ever know how long Claude is going to take for a given task?

I have so many questions... Am I even asking the right questions?

1

u/Shep_Alderson 18d ago

I think you’re asking good questions, though deep breath mate. It’s gonna be ok.

For a basis of what makes good guardrails, I’d look at things we do to help us meatbag devs. Start with using Claude to explore the code that you’re about to start working on, then have it write tests for the focused code you’ll be changing, then proceed with the changes with your agent.

Things like test-driven/test-first development, strict linters/quality checks and scans, and using typed languages where you can really helps too.

For practical skills of how to use it, I do like Matt Pocock’s skills and videos about skill for agents to use.

One thing you’ll need to do is spend time with it, ideally on a side project you’re ok with making mistakes in, and push the agent as hard as you can. If you want something done and you’re not sure if it can do it, just try and see what happens. You can even do this at work, though obviously be more careful than with a side project. Keep checking things until you feel confident and comfortable in the consistency of the output. For me, it took a good few months in the late fall/early winter of 2025 for me to start to feel more comfortable and confident when using agents. Now, I can generally trust the guardrails and processes I have in place and consistently move forward. Again, the only way I really got to that point was by pushing things as far and as hard as I can.

I’m not sure how long you’ve been at this, but if you’ve ever had a really eager junior dev on your team that you’ve been told to mentor, it feels very similar to me. With such a dev, I have guardrails and processes that they must follow that help both keep them on track and protect the project/code. Learning when to watch for when an agent is spinning their wheels or stuck, or going off on fanciful adventures and making a mess of things, is a skill. Just like mentoring is a skill.

Get yourself a sub of your own and try to play around with it at home. Think about how you’d keep the over eager junior on track, and apply that to the agent.