4 ms·
A common analogy used often, is developers are like soldiers, and the managers are the commanders who are not in the battlefield, so they just tell soldiers wha
by proc0 5y ago
A common analogy used often, is developers are like soldiers, and the managers are the commanders who are not in the battlefield, so they just tell soldiers what to do but they're not the ones receiving enemy fire (tight deadlines, fixing bugs, etc.). A better analogy to try and model organizations would be that developers are like wizards, and managers are mere non-magic muggles (from Harry P.) that are paying the wizards to do a certain task. Wizards are interested in the contract and will carry it out, but there's no point in a muggle telling a wizard what to do. Of course this varies and some wizards are not yet as high level as others, but the this is effectively inverting that hierarchy where the non-technical people have full control over a project, when they are not the experts.
This sounds preposterous and unorthodox, but it would solve many problems. Of course the technical people at the top would be the ones with the most experience and the ones that have contributed the most code across all layers of the software, and precisely because of that they could easily come up with a high level plan that would work. Then the managers would just take that plan and dress it up for whoever needs to know about it, and also take care of the admin tasks and facilitate meetings. Again, this sounds upside down and something managers will never agree to of course, but every organization I've been in, engineers succeed despite the manager's "orders", not because of it. I'm not saying managers don't offer anything here, but what they do offer is less valuable than the code itself by definition, since that is what gets shipped, yet somehow they are in this "overseer" position (sorry, but it really feels that way), where they are "responsible" but we all know at the end of the day the developers and engineers are truly responsible anyway.