Code quality matters to engineers. Find a senior manager who cares. Or worse, find a customer who cares.
While they obviously want a high quality product, no outages, a responsive system etc, I don’t think they necessarily understand why you need to avoid creating god-objects, need to reason about abstractions, etc.
Code quality also exists on different axes. I've seen the case where code quality was poor in some aspects, e.g., tons of technical debt, coupling making it difficult to make changes, but overall product quality was very high. It had to be: it was a medical device.
Most environments only care about the output. In the case I'm thinking of, Software made it perfectly clear to Management, most of whom were former engineers, that the product desperately needed redesign in some ways. But as long as the cost of that redesign exceeded the cost to get the next version out, it could be postponed. This went on for years.
As code quality goes down, so does productivity, as it becomes more difficult to add new features and there are more bugs introduced.
Code quality directly correlates to everything you describe.
Yea, but I’m not sure customers or mgmt get that
Nobody cares until the code gets so twisted in knots that bugs and security issues predominate.
Exactly. As long as poor code quality doesn't make a difference in the actual usage of the product, no-one but the engineers will care.