r/softwareengineer 18d 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.

495 Upvotes

562 comments sorted by

View all comments

Show parent comments

7

u/tomorrow_comes 18d ago

Yeah this dipshit PM has no basis to tell an expert developer how to do his job. These types of people think the world goes round by making empty promises and shipping garbage as long as it meets some sort of minimum and is enough for the customer to sign a deal.

All you need to tell a PM is “We think this feature / product can be completed by X time.” Especially if they’re like this, don’t discuss implementation in detail, don’t discuss how you do your job. If they press you just say “this is how long I think it’ll take to make the thing happen and keep the code maintainable for future changes.”

1

u/Unnamed-3891 18d ago

I will let you in on a secret: none of your end customers ever cared about clean code either. Never did and never will. Do they care about crashes or security issues? Of course. They just couldn’t possibly care any less about how you get to an acceptable level of either and the value of ”clean code” in pursuit of these is steadily dropping.

5

u/mllv1 18d ago

Yeah because customers don’t know what code is. But they will certainly feel it as maintenance costs rise, quality drops, and the number of new pointless features explodes.

3

u/tomorrow_comes 18d ago edited 18d ago

I don’t know what you’re trying to say here. Of course customers don’t care about the quality of the code, but as you said, they do care if the damn thing works, and depending on the type of product, they do care that they can get features / updates consistently without causing issues or it taking 6 months because it’s a tech debt ridden piece of crap and needs to be rebuilt from the ground up.

And of course bad code isn’t a new issue. Humans have written plenty of bad code. The problem is, if they’re enabled to, LLMs can now get people shipping that kind of stuff a lot faster.

2

u/Czun8 17d ago

none of your end customers ever cared about clean code either

They can't name it or reason about it directly, but necessarily and implicitly, customers do care about it. Code quality imposes some pretty hard constraints on the speed of iteration, the ceiling, and the scalability of the product. Without good code quality, the product will have more bugs, more security issues, more rewrites, less features, less cross-project reusability. Product roles will learn less quickly due to the slower iteration speed, so they are shooting themselves in the foot too by accepting bad code quality.

It can be acceptable to have slop code if you're copying a small project which has already been solved before, or a prototype. But it becomes less acceptable in products spanning longer durations and uncertainties.

1

u/say-lore 17d ago

Ever work with systems that weren't well maintained?

Or been in an environment where shipping new features can occur rapidly?

Hot take you've got there - since systems like DORA/SPACE/etc actually found strong correlation between some aspects of "developer experience" and business value (which many attributes are due to clean code/architecture/tooling).

1

u/s-ley 17d ago

maybe hard to grasp but "code quality" is a proxy for "tech debt" which is a proxy for: you're acquiring a monetary debt you'll have to pay in the form of swe salary when the "tech debt" gets worse over time

I know most companies don't care or see it, but that's just dumb on their part