Because they often don't understand the technology question or even what the issue is, but insist to intercept every decision.
Can you find one dev that has ever disagreed with this?
You need people that care about the how you do it as much about the why and the what. Everything else is going to be disfunctional rather soon.
Both React and Vue.js are now older than jQuery was when both were released. Same for Babel and Webpack. Typescript is older than all of these. SASS/SCSS also older than Typescript. Those are the only things you see in 99% of the frontend job descriptions out there.
If anything, frontend is kinda boring, and it can be argued that some of those tools above need some disruption.
It's easy to blame management because developers and engineers haven't the foggiest idea what management actually does.
Instead of engaging with that problem, they retreat to themselves where they hiss the name management in dark corners.
Fact is: Developers are incapable of self organising, and would drown overnight without management's stiff hand.
I absolutely hate how accurate that is because I always thought I was a big boy and I wouldn't need management if I just had "1 good tech idea".
Docker had the philosophy.
Now they are dying after losing the container wars. That's what happens when you have no idea what a product actually is...
>but insist to intercept every decision
Yes, because left to our own devices, developers will not contribute meaningful business value.
There is a better way, evidently it's not agile, but it needs management's buy in, because well they're in charge (get over it in all honestly, none of us actually want the job, trust me).
WE as engineers need to find a better way to engage management.
But those of you who just grumble "management ruin everything" deserve the pain that such a divide causes and we need to stop wasting lifeboat's on that mentality please
I beg to differ.
A dev team doing agile, with a team leader who is a manager/dev, can definitely self-organise. The team leader interfaces with non-dev management, removes roadblocks, and in collaboration with the rest of the devs sets the direction for a sprint.
You need this team lader role to keep the suits off your back, and to ensure the demands are achievable.
Project managers used to be people who wandered around with GANTT charts, and signed-off expenses and timesheets. Very rarely, I worked with a PM who saw their role as removing roadblocks, and shielding devs from suits. Those few PMs were a delight to work with (this was long before the appearance of Agile etc.)
> Yes, because left to our own devices, developers will not contribute meaningful business value.
I think that's rather obvious; management runs the business and sells the products. They set the business objectives, and there has to be clear communication between the devs and management, otherwise you get the "rewrite it all in X" syndrome.
When I first started we would be doing 1-off feature requests "because the client would _really_ like it". Everything was justified because money and because "we cant afford to lose that customer!" in our SaaS product.
I saw our main product being neglected because we'd invest so much time in these 1 off features only 1 client would use. All we would ever do would be client features, I was going crazy. It took a lot of talking, and still to this day I have to get him to think in terms of the product instead of the individual client.
Now we make more money, have more clients, and better our product for everyone which in turn gets more clients to get more money.
Open source does self-organise, and manages to produce some products of exceptional quality. It’s just almost completely unsteerable.
In a company, you can pretend to order people around. But the truth is that what really matters is how all the personal and political goals happen to align.
The project I work on has around 100 regular contributors, but also a few small teams, either volunteer or staff, who meet regularly and make sure things move forward in a coherent and sustainable way.
If that's true in an organization, its only because either management has failed to hire developers that can self organize, or management has constructed structures and incentives which inhibit self-organization by developers. Usually, both. Often deliberately, because line managers are often more comfortable passively recieving directives from above and crafting directives for below than any other mechanism of management, since this minimizes conflicts with those in organizational power positions.
Problem is that the industry is full of untrained individuals who hustled their way ”fake it until you make it” and will use all their political and manipulatoy clout to justify their positions and fight back any attempt at effective process engineering.
It is very convenient then to shift attention to inadequacy of others.
I don't understand how your vision of things is not also contributory to a strong divide.
Heard of Linux?