I have found that communication strengths and weaknesses can vary, from person to person, and it's usually a tough sell to come up with "one size fits all" solutions.
One example, is that I had an employee who is probably the best engineer that I've ever met, and I've worked with top-shelf people.
But he is "on the spectrum," so his verbal communication tends to be in monosyllables, and can sometimes be a bit inscrutable.
His emails and specs, on the other hand, were absolute marvels of communication.
I had another engineer on the same team, who wasn't quite as brilliant, but he is an awesome "people person." It was always a good idea for me to make the time to chat. His emails tended to sometimes be abrupt, and the information density wasn't that great.
Put him in front of a whiteboard, however, with an audience, and it was amazing.
As their manager, it was incumbent upon me to deal with each as an individual. They would sometimes have clashes, and I was often the peacemaker.
Not saying this is you, but I'm surprised how many managers seem unaware of the prevalence of social deficiencies among the highest performing engineers. 20 years ago this was just sort of a given. I have to regularly defend a few highly productive but socially caustic engineers who are absolutely essential to our products. Management would love to get rid of them and the problems they cause without realizing no one else would dedicate the mental resources to the sort of complex, deep problems we're trying to solve.
There’s always a balance to be kept, between high-performing engineers, and team dynamics.
Great products are created by great teams. It’s almost impossible to create anything of any meaningful scope, these days, without a team. There are “superman” engineers, like Linus Torvalds, that can create entire shipping architectures, but those are incredibly rare.
That said, the myth of the “cookie cutter” engineer is just that: a myth. Some cultures do better at it than others. I worked for a Japanese company, and they came very close to it, but at a cost that most folks here, would find prohibitive.
High-performing teams can be difficult to manage. There’s often significant differences in personalities, egos can be high, and everyone has an opinion that is the only “right” one.
Great teams require good management. It’s always fun to dis managers, but good ones are force multipliers, like nothing else.
I would probably spend an hour or two just writing something like that. On the surface, I'd agree.
With that said, in my experience, many stand-up formats devolve into some version of "the two most talkative people have a conversation for 30 minutes while everyone else listens". I'd probably get more value out of doing a write-up than sitting through a meeting like that.
It really depends on the health of the stand-ups on the team.
Yeah, I would also generally agree. But what they are showing is the 'Basecamp workflow', where instead of monopolizing a meeting or posting walls of text on slack or sending an email, you surface the issues on the project management level, where everyone can find it. It's their thing.
RIght, this is just way too much information and detail, and seems designed to look good in front of management rather than to inform team-mates, who presumably know a lot of the details anyway.
I think there is an argument here with no right answer. Writing can have such a better signal to noise ratio but it’s harder to write well. Talking is easy but it’s also easy to forget something in the spot or ramble on too much without editing.
Pushing is fine if people can consume it asynchronously, and if you actually stick with it and don't forget to publish frequent updates.
In my decades as a SWE, there is one way that worked better than all others: having a competent project manager who individually polls team members with weekly, short(5-10min) 1:1s and then takes care of handling schedule updates, resource assignment and unblocking the dev. This allows devs to focus on what they do best with minimal cognitive load.
It requires hiring PMs though, and established managers will bristle at the thought of giving up responsibilities and power to another person. I'm seeing that within my org now. We're slowly learning all the lessons that big companies learned years ago from 70+ years of project management theory, but we're half-assing it because we refuse to accept that PMs and Gantt charts are about the only way for a large org to deliver efficiently and accurately in a mixed hw/sw, multi-team environment.
Which is frustrating, because on the tech side, "use boring technology" has a couple essays written about it, but when it comes to project management, everyone things they can do better. Unless
project management better is your core competency, like if you're Monday.com, (it isn't) you have more important things to burn energy on than reinventing project management from first principles.
Up to a point, I don't care how people communicate, as long as they do. Not everyone will like this (nor like doing it) - so don't force it - but let each person play to their strengths as much as possible. The good thing about this is it lasts. It's great evidence for your work, thought process, developing communication skills. It's easy to share, reproduce, reuse.
I've been in places where this would be a great deterrent for the endless meetings where slightly different groups of people need reassurance about the same things over and over again. Not that they're completely useless, but they're slow, low bandwidth and fatiguing. I wish some of those could have been replaced with a document like this.
99% of the problems Scrum/Agile/Whatever try to solve boil down to “communicate more, more often”.
I personally have no issue with a daily stand up, but then it’s always been basically the only meeting in my day and 9 times out of 10 people have stuck to a structure and always shared something interesting and useful about their day. If you just say “no blockers” you’re doing it wrong in my opinion.
If writing and sharing works best for a team then do it that way however we, as devs, need to realise we work in service of a broader business so if we don’t do a good job communicating what we do then that business will force something on us.
> If you just say “no blockers” you’re doing it wrong in my opinion.
This only works when you trust your team members.
This means absolutely nobody who can fire me on the spot, not my supervisor, not my skip, not the CEO/CTO/VP should be on the call.
No non-technical staff from the above list should have a right to challenge estimates.
No product owner can belong to the above list.
There should be openness when technical decisions made by a team get overriden from people on the above list.
Especially when something painful like a terse edict to the effect of "allow x and y from security and audit team full, direct, read-write-execute permission to the backing data store of your micro service in production".
If there is no communication from the top, or there are negative consequences for speaking up, expect people to mentally check out.
> This only works when you trust your team members. This means absolutely nobody who can fire me on the spot, not my supervisor, not my skip, not the CEO/CTO/VP should be on the call.
not sure how I'd've ever justified suggesting engineering standup without our engineering manager present
We do standups a couple times a week as a text chat, one person pings everyone as a reminder then we all put in just a couple sentences on what's going on before we go to lunch. Most days someone's message starts a thread where two or more of us chat about something in their update.
*squints* However when Javascript is disabled, the font/lettering displayed on this page is, uh... one nobody should ever radiate information in, ever.
(A mix of capital letters and enlarged lower-case letters.)
Both are useful. But radiating is useful. “I am done on my task anyone need help” is useful. People may not desperately need help that they would go ask, but might appreciate an extra hand.
I have found that communication strengths and weaknesses can vary, from person to person, and it's usually a tough sell to come up with "one size fits all" solutions.
One example, is that I had an employee who is probably the best engineer that I've ever met, and I've worked with top-shelf people.
But he is "on the spectrum," so his verbal communication tends to be in monosyllables, and can sometimes be a bit inscrutable.
His emails and specs, on the other hand, were absolute marvels of communication.
I had another engineer on the same team, who wasn't quite as brilliant, but he is an awesome "people person." It was always a good idea for me to make the time to chat. His emails tended to sometimes be abrupt, and the information density wasn't that great.
Put him in front of a whiteboard, however, with an audience, and it was amazing.
As their manager, it was incumbent upon me to deal with each as an individual. They would sometimes have clashes, and I was often the peacemaker.
Great products are created by great teams. It’s almost impossible to create anything of any meaningful scope, these days, without a team. There are “superman” engineers, like Linus Torvalds, that can create entire shipping architectures, but those are incredibly rare.
That said, the myth of the “cookie cutter” engineer is just that: a myth. Some cultures do better at it than others. I worked for a Japanese company, and they came very close to it, but at a cost that most folks here, would find prohibitive.
High-performing teams can be difficult to manage. There’s often significant differences in personalities, egos can be high, and everyone has an opinion that is the only “right” one.
Great teams require good management. It’s always fun to dis managers, but good ones are force multipliers, like nothing else.
With that said, in my experience, many stand-up formats devolve into some version of "the two most talkative people have a conversation for 30 minutes while everyone else listens". I'd probably get more value out of doing a write-up than sitting through a meeting like that.
It really depends on the health of the stand-ups on the team.
In my decades as a SWE, there is one way that worked better than all others: having a competent project manager who individually polls team members with weekly, short(5-10min) 1:1s and then takes care of handling schedule updates, resource assignment and unblocking the dev. This allows devs to focus on what they do best with minimal cognitive load.
It requires hiring PMs though, and established managers will bristle at the thought of giving up responsibilities and power to another person. I'm seeing that within my org now. We're slowly learning all the lessons that big companies learned years ago from 70+ years of project management theory, but we're half-assing it because we refuse to accept that PMs and Gantt charts are about the only way for a large org to deliver efficiently and accurately in a mixed hw/sw, multi-team environment.
I've been in places where this would be a great deterrent for the endless meetings where slightly different groups of people need reassurance about the same things over and over again. Not that they're completely useless, but they're slow, low bandwidth and fatiguing. I wish some of those could have been replaced with a document like this.
I personally have no issue with a daily stand up, but then it’s always been basically the only meeting in my day and 9 times out of 10 people have stuck to a structure and always shared something interesting and useful about their day. If you just say “no blockers” you’re doing it wrong in my opinion.
If writing and sharing works best for a team then do it that way however we, as devs, need to realise we work in service of a broader business so if we don’t do a good job communicating what we do then that business will force something on us.
This only works when you trust your team members. This means absolutely nobody who can fire me on the spot, not my supervisor, not my skip, not the CEO/CTO/VP should be on the call. No non-technical staff from the above list should have a right to challenge estimates. No product owner can belong to the above list. There should be openness when technical decisions made by a team get overriden from people on the above list. Especially when something painful like a terse edict to the effect of "allow x and y from security and audit team full, direct, read-write-execute permission to the backing data store of your micro service in production".
If there is no communication from the top, or there are negative consequences for speaking up, expect people to mentally check out.
not sure how I'd've ever justified suggesting engineering standup without our engineering manager present
(A mix of capital letters and enlarged lower-case letters.)