Every company I've ever worked at has more work that they would like to do than they have engineers to do it. The problem often isn't that they don't understand why fixing technical debt is important, it's to decide if fixing that particular technical debt right now is the best use of these resources right now. Also they might also know things that I might not know, like long term plans for and the relative profitability of different projects, which will affect how they make decisions. No point in spending effort fixing technical debt if that project/department is already slated for closure.
Also maybe it's a US vs EU thing, but at every engineering and IT company I've ever worked in Europe, the person two steps above me was basically always an engineer or at least has a science or technical background.
I've worked at a couple of BigTechs, where there were between 5-20x more engineers than actual work. The trade-offs are... strange in that world.
> Also maybe it's a US vs EU thing, but at every engineering and IT company I've ever worked in Europe, the person two steps above me was basically always an engineer or at least has a science or technical background.
I haven't found that to be common in the US. I've had a number of front-line managers who were (somewhat) recent engineer conversions, rarely had anyone above that level who was.
Never seen that in my life, and I've worked at small, medium, and huge companies. Sounds wild. So they actually have zero bugs in their bug tracker, and no feature on deck waiting to be built? What do they do all day?
Typical case I've seen at many companies is: Team has N engineers, with a rough capacity to fix N x 2 bugs per week. Bugs come in at a rate of N x 3, and the bug backlog is N x 80 and constantly growing until the team does periodic "bankruptcy" ritual where they mass-close N x 50 bugs that they admit they'll never get to fixing. Repeat forever.
A big chunk of the company would be off doing Greenfield projects that would mostly get cancelled before they ship, another big chunk is off working on multi-year rewrites of existing services (that never finish), every successful team sprouts spin-off teams with amorphous charters like "apply machine learning to service X"...
It's a side effect of an incentive structure that drives all the managers to grow headcount as fast as they can (since you need more reports to justify promo), and money basically growing on trees in those places
Hence you work on "huge priorities" and then they turn out to attract 2-3 tiny customers....Meanwhile you have horrendous problems with things that do sell that make them inconvenient for your customers such that they will be delighted to go elsewhere the moment they find out that your competition does it better.
Why pay off tech debt A and not tech debt B? Is this really more urgent than implementing feature C?
I have some financial debts, but I prioritise paying off some over others, and even allow myself to buy myself nice things instead of paying off the mortgage early. The same principle applies with tech debt, except I have to justify my choices to my bosses instead of to my girlfriend.
The reason I explain the value of what I am doing (to both technical and non-technical managers) is because it helps them understand the bigger picture.
Or perhaps it helps them understand that I see the big picture, so that they know (and I know) our goals are aligned.
I am aware that not everyone is as fortunate as I am. I'd equally suggest that not many managers are fortunate enough to have engineers that can articulate what they are doing in terms they can understand.
There are plenty of managers out there who are not team players. And probably more engineers who are equally unable to see the bigger picture. Which is unfortunate because when you learn to work together towards a common goal, it really improves everything.
Mainly to prove you can sell, not that they can buy. Selling involves understanding the customer's needs, their tradeoff preferences, your value prop and being able to reflect that back to them. The minimum bar for successful selling requires you to demonstrate a certain degree of competence and due diligence that provides assurance that you're able to operate autonomously with trust.
Nowhere is that said.
The benefit of them selling is not for the management to understand, it's for the worker to understand and be able to articulate as it will flow downstream to strategy.
Maybe the management doesn't understand but my point is it's irrelevant. I've been in management situations where I've understood perfectly well and ones where I have zero clue, my requirements for you selling to me remain exactly the same which is I'm using it as a gauge of how much you understand.
You do realise that almost all of the unicorns and almost-unicorns of the last two decades were conceived, started and built by engineers, do you? Perhaps beacuse having ones brain primed to very hard problems, does not make it so hard to learn the "hard" business skills on the side after all, all the while coding up the product? But how would former humanities students get their "tech salaries" if we did not somehow convince engineers that they suck at what are honestly said, third-tier competencies.
Because engineers are typically (although not always) terrible at business. Or marketing. Or Sales. Or whatever.
In other words, a successful business needs many skills. One of those skills is management. It's inevitable that top management (who's core skill is hopefully, well, business) needs to people to do the other skills. Marketing, Sales, Engineering, and so on.
Hence those skilled people need to communicate with management in ways in which management can understand. They can then make sure everyone has aligned goals. It's no good if engineers are doing one thing, marketing is doing something else, sales is targeting the wrong demographic, and so on.
It seems to be a unique conceit of software engineers that "management just gets in the way". When, more realistically, management is trying to communicate the business requirements, and we feel we know better.
Most engineers (again, not all) are terrible at the actual business part. The list of failed companies, multi-year solo projects that never sell a single copy, and so on are evidence of this. Joel made his name writing (literally) "The business of software".
So back to your question;
>> why do people not understanding engineering work, end up managing engineering work?
because how else will engineers know what to do?