3 ms·
The article reminded me that I don't understand what managers are for :-) Especially if a manager is in fact a software engineer promoted to that role. The prom
by azangru 4y ago
The article reminded me that I don't understand what managers are for :-) Especially if a manager is in fact a software engineer promoted to that role. The promotion likely occurs because a) the person is good at being a developer, and b) the manager's position is better paid than his previous one. Which combines a perverse incentive (of course anyone would like a raise) with a completely different set of responsibilities that the person hasn't been trained for.
I do like the ideas coming out of scrum, some of which would fit well with what the author is describing.
For example, the anecdote about a junior engineer struggling with documentation for a new feature sounded like an opportunity for pairing with a more knowledgeable team member, and talking through the feature while planning the documentation for it. When the author said that he instead would write a design doc and the engineer would implement it, he was not acting as a manager, but rather as a software engineer.
As another example, the author talks about planning the work, which, in a scrum environment, would involve a product owner (someone from the business side), and the rest of the team, to collectively identify and plan the next set of features. In a (sprint) review, the team, together with other interested parties, can inspect their progress and talk about the roadmap (something that the author is trying to do on his own).
I understand the purpose of senior software engineers, or of a product owner. Of a manager, not that much.
- evilduck 4y agoYou've never witnessed an underperforming developer? Who among a group of peers is going to deal with that? What about conflicts and disputes? Adults can become quite childish over the smallest issues and sometimes an impartial mediator needs to step in. And when budgets constrict, do you just draw short straws to decide who quits for the greater good or do you all volunteer to take equal pay cuts? You all openly share your salaries right? When budgets increase, do you all slice the pie equitably? And what about a good developer not realizing their potential? Who will nudge them to take the next step and sign up to a training session or apply for a promotion in another group, or even look for new jobs because you know they've hit a ceiling here? Your teammates who rely on you are very unlikely to send you packing for your own good. And when someone has a personal crisis, does a peer or product manager get consulted about their private issues? Bob from the API team just had their teenage son overdose on fentanyl, do you think he's going to be super talkative about needing a couple weeks off on short notice and in a state of mind to perform some transition planning?
- KyeRussell 4y agoYep. All part of the idealistic “let’s just sit together and do the code” pipe dream. Which I honestly see as part of the developer superiority complex, where somehow we don’t count as…imperfect…people.
- evilduck 4y agoI've been there, in small cohesive high functioning teams there is a sense that a manager isn't really needed, and to a degree that's true while things are going well, right up until shit inevitably hits the fan in one of these scenarios. A medium or larger business also usually wants planning and reporting and analysis that devs usually hate to create, present, or maintain because it eventually takes a big chunk of time away from developing. It doesn't make them bad devs but the management aspect gets neglected and the business suffers as a consequence, leading to eventual layoffs or shuttering. I think the amount of management needed is a wide open discussion, but questioning if it's needed at all is naive.
- azangru 4y agoI do not know how a team of peers can deal with a bad team member; this is a good point. But on the other hand, I've seen teams that do have underperforming developers despite also having a manager. So a manager is no protection against underperformers on a team. Getting rid of people is hard. As for conflicts or personal crises, what _does_ a manager do? If Bob from the api team doesn't tell the team he needs a couple of weeks off, and the team does not collectively plan for what to do in his absence, then how does a manager help? I've been on a team that had a developer whose contract was running out and could not be renewed because of the max number of years a person can be employed by that organisation. This was known years ahead. No transition for the ownership of the library he was developing had been planned, despite the crucial nature of that library, and despite a manager being around. Two, in fact. As for a good developer who has hit the ceiling in an organisation, I find it hard to believe that a manager who relies on that developer to move the project forward will be any more likely to advise him to look for a better place elsewhere than his teammates would be. I think it's up to the developer to appreciate his situation and how happy he is where he is (and to start looking if he isn't). And, since you offered different scenarios when things go sideways, how does a team of developers deal with a manager that is underperforming?