Hacker News new | ask | show | jobs
by ChrisMarshallNY 88 days ago
One of the features of my work, these days, is that I work alone. I worked in [pretty high-functioning] teams, for most of my career.

Teams are how you do big stuff. I’m really good at what I do, but I’ve been forced to reduce my scope, working alone. I do much smaller projects, than our team used to do.

But the killer in teams, is communication overhead, and much of that, is imposed by management, trying to get visibility. If the team is good, they often communicate fine, internally.

Most of the examples he gave, are tools of management, seeking visibility.

But it’s also vital for management to have visibility. A team can’t just be a “black box,” but a really good team can have a lot of autonomy and agency.

You need good teams, and good managers. If you don’t have both, it’s likely to be less-than-optimal.

3 comments

Strong agree. When I started managing there was very little oversight. It wasn’t perfect and we went a bit astray, and we also did phenomenal work and had everyone on the team deeply engaged and moving with autonomy.

On my second team, the visibility theater took over, upper management set and reset and reset and reset our direction, and nobody was happy. In retrospect, I should have said no immediately. Trusting and empowering your people is hard to beat.

>trying to get visibility

They could review PRs and commits and specs to get visibility and reduce comms overhead, if they had the skills and time.

The non-technical manager also takes great conveniences in making technical people spend their time translating things. But no one ever asks the manager to learn new skills as much as they make developers do it.

This is a really interesting point that too often goes unexamined.

I don’t know how to design and integrate systems and products, and write code, because I was born that way. I had to learn.

Likewise, later on, I had to learn project management, and product management, and the language of business so I could communicate effectively with those lacking a background in technology. Again, wasn’t born that way: had to learn.

But in a quarter of a century, the number of people on the commercial side who’ve bothered to learn enough about the technology side to have an informed conversation? Very few. Probably count them on one hand (the naive way: not using binary).

And bear in mind we’re talking about businesses that were heavily if not totally reliant on technology and the delivery of technology solutions for their continued existence.

You’d think a few more of these people would want to take a bit more responsibility for those outcomes, and maybe be a bit less disruptive to productivity, given their livelihoods have often depended on the success of said outcomes.

Like I say: interesting, isn’t it?

The standups are also organized around disrupting a small group of people for the convenience of one.
Standups should eliminate almost all other meetings engineers need to attend. Except to go deeper on questions that came up in standup that cannot be instantly resolved.

Otherwise yeah there’s really no point.

I would be pleased with the standup if it eliminated other meetings, but that has definitely not been my experience.
there should be only 3 regular meetings in an agile engineering team - weekly iteration planning (1-2 hours max) - daily standup (15 mins max) - weekly demo & retro (1-2 hours max)

literally everything else is work off the kanban board or backlog.

in my teams everyone was told to decline all meetings unless it explicitly led to the completion of a weekly planned story/task. this way all meetings for the team have a clear agenda and end in mind.

for mandatory external meetings & running interference with external parties, there are ways to insulate the majority of the team from that.

Is that three kinds of regular meetings? Because I count 8 meetings (and four kinds, as I don't think I've ever had demo and retro combined due to different groups of people being in both).
Be the change you want to see.
Do you mean standups as part of Scrum? Scrum dictates several other meetings.
I will allow one more meeting to start a new sprint and end the previous one. Everyone should have prepared ahead of time to report on all their sprint items and whether they were completed, if not why not, and to present the work they will be doing in the next sprint.

If the Scrum Master or whatever their title schedules any other repeating process meetings, fire them.

But what about that meeting that starts with "how do you feel today?" and "if you were a car, what car would you be? And why?".
In my last company (before I left tech forever) I would tell my team that I am blocked on something or my progress is slow because of whatever reason and it would all get ignored lol.

It was almost like they required the standup as part of the process but never used it the way it should be used.

Communication overhead is a quadratic function. In teams with n people it takes n^2 time to keep everyone informed.

That's why the most effective teams are wolf packs - roughly 6-10 highly performant members where communication overhead is still low enough that it barely matters, but have enough people to be way more productive than an individual.

Obviously there's a minimum level of competence you need to have for this to work. The smaller the team the less freeloaders are tolerated.

In my opinion, 4 is the best size. 7-10 is horrible - meetings and conversations use up so much time.

You want to break a team of 10 in half if you can. Not always easy. But if you can manage it, do it.