Next is bullshit political meetings that engineers are forced to have to remove people blockers. I have no idea what managers are useful for if they can't handle people issues.
Next is nonsense nitpicks on PRs and design docs. If manager has a peculiar OCD about something, don't waste dev time on that. Work on your own OCD.
If that's what you're doing then you're not using that opportunity correctly. It's a very quick coordination between members of a team to align among one another, share important information (including managing expectations) and ask for help. It's for members of the team, and if the team don't feel it's adding value, raise it in the retrospective and decide whether to iterate or kill it. If you're using it well it cuts out other waste/interrupts.
I didn't say it was reason for a daily meeting. If you don't find you need them, don't do them. Just agree with your team they are unnecessary. The teams I have worked with have always found it helpful to be able to adjust their plans with the whole team in situ (e.g. I need someone to help me with X; ok, I can help if someone else could do Y; cool, if Z can work with me, I think we could do Y. If we do this, we should tell A that B won't be done this week.)
I would say it is safe to say, developers, are the most valuable resource period. At least as far as human capital is concerned, and that is going to keep increasing and increasing until AI takes over.
I completely agree that all the occupations you listed, are way more important, especially parents. I'm a little on the fence on teachers now, because I feel too many are teaching from an agenda playbook, rather than to make our little ones actually smarter. But, the point you made, is exactly the point. We as a society are trying to build something more, whether that is get to Mars, have autonomous cars, or even have social media that is able to completely control us. I agree, calling people resources, or talking strictly about butts in seats is what people that are attempting to be soulless do. But everyone that is "powerful" today needs developers way more than they care to admit. It is amazing to me how many people I know wish they could be developers, like have actually said those words to me. Mind you, these are people that want to be more successful, and thus need to "build" things at scale, and are thus reliant on developers. And having to pay someone 200K or 300K or 400K to do something they could do if they just had the time (or at least they think that) drives them mad.
I agree on the teacher point. There are some teachers that really care about unleashing genius, creativity and curiosity. There are some that just want the paycheck each month. And a scale in between. I question the "system" and whether it's measuring (or able to measure) the 'right' things? As most of the behaviour from teachers and education leadership is based around attainment. Likely that putting a bunch of people in a cohort and trying to help them grow into curious, motivated individuals can't be done on a large group basis.
Largely, I think economics drives most systems, and the behaviour within those systems. It requires people to think and act beyond those boundaries for humanity to move forward.
If there were no developers, or no software, or no Internet, I wonder what humanity would look like right now.
When I start to think about it lot of the less sexy work seems lot more beneficial for humanity than what the "tech" companies produce.
Not that there isn't some benefits, but compare most of social media, advertising and many platforms to automation, industry and so on. Global logistics is big thing too improving quality of life massively, even if consumption might be somewhat negative for planet.
Yeah, I think there are too many industries that take more than they give, however they prey on human weaknesses. The global logistics thing is interesting as arguably globalisation is the leading cause of destruction to planet Earth.
tl;dr: Management should be a supporting role, but because it's closer to the business (and usually staffed by "Idealists" as described here: https://leanpub.com/developerhegemony), it's given a more powerful position, and does whatever it can to execute as needed by the business. Of course everyone (managers included) also want to keep the power they have and gain more power/money over time.
Developers' time isn't respected because managers have more power and building software is hard, so rather than building partnerships and supporting everyone as needed, then just squeeze harder, treat people lower on the org chart as lower worth as humans, and generally don't shield or abstract things away as much as they should (often not at all). From the article:
> The goal of most software projects is to deliver to deadlines and budget of the plan. The real goal of a software project is to create the right software, but instead decisions focus on the meeting the plan not creating software.
The plan is focused on instead of the software because the plan is the artifact of the more important people, the managers. They're higher up on the ladder because they're more loyal to the company. Even when this isn't the case they're still higher up because it's safer to have them in power rather than devs who can change stuff.
Are they any software companies that follow this advice? Can we name them? Are they more successful than the rest? Are their developers happier, or paid more?
Unless I'm terribly confused, we spend a lot of time on this topic, but the companies that exhibit this behavior seem to be just fine, if not wildly successful.
Purely based on my experience, I believe much of what is described cannot exist in large (100±) organisations. Fundamentally, large organisations need decision making structures, and become more "command and control" in order to make those structures work.
Smaller organisations can more quickly assess problems/opportunities and collaborate on responses in a more inclusive way.
Back to how you define success. Profit? Hypergrowth? Investment? Shares? Salary? Staff churn? Mental health? Satisfaction?
I run small (4-20) person development teams, as a project/delivery manager or senior manager, and I always prioritise mental health, well being and support for every team member. I always get feedback that team members would like every manager to do the same, and that they are happier on my team.
I do this because having come from a system/development background myself, I've seen the negative effects that bad management has. My own mental health, that of others, and losing colleagues to suicide (not just because of work, but work had been a factor) led me to take a protective and idealistic stance towards supporting development teams and project members.
The flip side of taking this approach is the very difficult conversations and stress I have to deal with in dealing with clients, project sponsors or CxOs. That's my choice. Many of the roles that commission software development teams have no idea how to work with or manage them.
Although a bunch of really talented players will have a lot of fun playing together. Only when we monetize their talent do we start worrying about "progress".
I would like to think the two aren't mutually exclusive, however I do think that sports players (and actors/musicians) are turned into what are essentially money making vehicles (whether that be advertising in sports or royalties in entertainment). Those that are considered "A" game are those that earn the most money for other people.
I think of my own style of management being less about "saying no" and more about supporting the team and business to find ways to say "yes" that are both sustainable (no burn out or dissatisfaction from developers) and impactful (makes a valuable difference to our customers or business).
I think of management being able to influence the conversation in a direct way, and also committing to the company direction (even if I don't personally agree with it).
Maybe it's just me, but "no" isn't as much of an option as it seems from the outside looking in. I've had much better results by refining and redirecting outside requests than by just denying them outright. There's also the chance that whoever you just denied will now just try to find a way to get what they want without you.
If you're in a place where you are constantly being asked for unacceptable things, there's a chance that one of the parties in those exchanges is going to be asked to leave. If we accept that premise, then the likelihood of you being dismissed goes up as you deny more requests from more people.
I use "no" rather judiciously and I avoid saying it in front of too many people at once. This isn't about cynically appearing reasonable as much as it is about being polite.
24 comments
[ 3.1 ms ] story [ 58.0 ms ] threadNext in line is presentations for management.
Next is bullshit political meetings that engineers are forced to have to remove people blockers. I have no idea what managers are useful for if they can't handle people issues.
Next is nonsense nitpicks on PRs and design docs. If manager has a peculiar OCD about something, don't waste dev time on that. Work on your own OCD.
I'm a developer who has gone into management.
Most of the software that is churned out just keeps the money flowing.
Garbage collectors, nurses, utility workers, teachers, parents.
All seem infinitely more valuable to humanity then anything developers do, unless you're advancing medical or bio-science.
Admittedly, due to demand and the ever increasing globalisation of systems software is exploding, so developers are in demand.
Most valuable type of person (I despise the word resource applied to people) I guess depends on your definition of what is valuable?
Largely, I think economics drives most systems, and the behaviour within those systems. It requires people to think and act beyond those boundaries for humanity to move forward.
If there were no developers, or no software, or no Internet, I wonder what humanity would look like right now.
Not that there isn't some benefits, but compare most of social media, advertising and many platforms to automation, industry and so on. Global logistics is big thing too improving quality of life massively, even if consumption might be somewhat negative for planet.
Like
I think this is the cause: https://charity.wtf/2020/09/06/if-management-isnt-a-promotio...
tl;dr: Management should be a supporting role, but because it's closer to the business (and usually staffed by "Idealists" as described here: https://leanpub.com/developerhegemony), it's given a more powerful position, and does whatever it can to execute as needed by the business. Of course everyone (managers included) also want to keep the power they have and gain more power/money over time.
Developers' time isn't respected because managers have more power and building software is hard, so rather than building partnerships and supporting everyone as needed, then just squeeze harder, treat people lower on the org chart as lower worth as humans, and generally don't shield or abstract things away as much as they should (often not at all). From the article:
> The goal of most software projects is to deliver to deadlines and budget of the plan. The real goal of a software project is to create the right software, but instead decisions focus on the meeting the plan not creating software.
The plan is focused on instead of the software because the plan is the artifact of the more important people, the managers. They're higher up on the ladder because they're more loyal to the company. Even when this isn't the case they're still higher up because it's safer to have them in power rather than devs who can change stuff.
Unless I'm terribly confused, we spend a lot of time on this topic, but the companies that exhibit this behavior seem to be just fine, if not wildly successful.
Purely based on my experience, I believe much of what is described cannot exist in large (100±) organisations. Fundamentally, large organisations need decision making structures, and become more "command and control" in order to make those structures work.
Smaller organisations can more quickly assess problems/opportunities and collaborate on responses in a more inclusive way.
Back to how you define success. Profit? Hypergrowth? Investment? Shares? Salary? Staff churn? Mental health? Satisfaction?
I run small (4-20) person development teams, as a project/delivery manager or senior manager, and I always prioritise mental health, well being and support for every team member. I always get feedback that team members would like every manager to do the same, and that they are happier on my team.
I do this because having come from a system/development background myself, I've seen the negative effects that bad management has. My own mental health, that of others, and losing colleagues to suicide (not just because of work, but work had been a factor) led me to take a protective and idealistic stance towards supporting development teams and project members.
The flip side of taking this approach is the very difficult conversations and stress I have to deal with in dealing with clients, project sponsors or CxOs. That's my choice. Many of the roles that commission software development teams have no idea how to work with or manage them.
I think of management being able to influence the conversation in a direct way, and also committing to the company direction (even if I don't personally agree with it).
Maybe it's just me, but "no" isn't as much of an option as it seems from the outside looking in. I've had much better results by refining and redirecting outside requests than by just denying them outright. There's also the chance that whoever you just denied will now just try to find a way to get what they want without you.
If you're in a place where you are constantly being asked for unacceptable things, there's a chance that one of the parties in those exchanges is going to be asked to leave. If we accept that premise, then the likelihood of you being dismissed goes up as you deny more requests from more people.
I use "no" rather judiciously and I avoid saying it in front of too many people at once. This isn't about cynically appearing reasonable as much as it is about being polite.