Before we start - I'm working on https://cloudash.dev, a brand new way of monitoring serverless apps 🚀. Check it our if you're tired of switching between 50 CloudWatch tabs when debugging a production incident.
It's highly likely that I don't know you, the reader.
But, if I were a betting man (I sometimes am, don't lend me any money) I'd say:
You probably don't enjoy meetings.
For the rest of this article I'm going to assume that you're involved in creating software and you don't exhibit any inherent hate against other human beings (my strong belief is that talking to humans is more important than talking to machines).
Meetings, what's wrong with them?
There are few things that are so universally hated by developers as meetings are. It's actually quite remarkable, we cannot agree whether we should use tabs or spaces (my attempt at a compromise to use 2 spaces AND a tab was promptly ignored) but when it comes to meetings the verdict is simple: I don't wanna.
After a couple of years in the field I've noticed a distinction between gatherings and business meetings. You probably refer to both of them as meetings. Allow me to explain.
Gatherings
This is what developers hate. In the year 300AD someone set a meeting slot every Wednesday at 3pm and because of that - your team gathers in a room.
You are not there because you want to, you're there because your calendar told you to come to the conference room (or dial in remotely). No one runs the meeting, there's no agenda, you spend the first 10 minutes dealing with audio/video issues, half of the team is checking slack and nothing gets done.
This is not a business meeting, this is a house party but with no music and/or booze and 100% less fun. And yes, it's highly likely that you're wasting your time.
Instead of that mess, you (and your team) should strive to have something I'm going to refer to as:
Business meetings
Where things get DONE.
You cannot build a good product without common understanding and deep knowledge of what you're building and why. It's not enough that you understand what is the scope of a feature X - in order to be a better software engineer you need to know: What problem does this feature solve? Can we solve this problem in another way? Do we want to solve this problem in the first place?
This is where a well-run business meeting is really helpful. The one after which you say:
I'm glad I joined that one. I've learned a lot and our plan for the next sprint is much more clear to me now.
What is the difference between a business meeting and a gathering?
There's an agenda, emailed to everyone days in advance. Preferably with a desired outcome of the meeting.
It's clear who's running the meeting.
People are awake, focused. Laptops are closed, phones remain in their pockets.
It's obvious whether it's a decision meeting or a debate meeting. This is highly important - your team members need to know whether they need to make a decision about the new architecture change at the end of this meeting or they are meant to discuss the idea and come to conclusions later.
Someone is writing down action points/notes. It would be absolutely fantastic if that person would be informed about that expectation before the meeting starts.
If there's any audio/video connection involved - the room is prepared well in advance. If you're running the meeting, get to the room 5-10 minutes earlier. Make sure that the TV works, audio is on, microphone is not laying in the corner of the room. Do not make 20 people wait while you're fumbling with an HDMI cable.
Don't organise meetings that could be an email instead. Let me repeat that.
Do not organise meetings that could be an email instead.
And most importantly, respect others' time. Do not keep 15 minute meeting artificially running for an hour because your pizza arrives at 1pm and you really don't have anything useful to do in between.
An unspoken truth
All in all, as a developer - meetings are a part of your job. This doesn't mean that you have to endure X hours daily in a conference room. Meetings can be useful and it's up to you, whether you're an organiser or an attendee, to make it so.
I feel that a large chunk of why meetings have such a bad rep is because of the fact that folks don't treat the time spend in a conference room or on a call as work. It's a break from real work, but here's the thing:
No matter how hard the organiser is trying to make the meeting productive, if other attendees won't cooperate, it's not going to be a practical use of company's time. And vice-versa, if you want to be an active attendee but no one is running the meeting, your attempts will bounce off the wall. I strongly believe it's better to leave a meeting if you no longer feel relevant instead of staying in the room just in case.
Time is the most valuable resource on this planet [citation needed]. You may earn more money in the future (I'm keeping my fingers crossed!), have more resources, team members (who are not a resource, do not refer to people as resources, seriously) and anything other you might need - an hour wasted is an hour gone. You will never get to re-experience those 15 minutes of @tlakomy trying to establish a ZOOM connection on a muted TV.
Respect your peers, respect yourself and don't waste their time.
Less gatherings, more business meetings - someone kinda smart
Top comments (3)
Great writeup. The citation you need about time is chapter 2 “know thy time” from the book “ the Effective Executive” by Drucker. That chapter alone is worth the price of the book. I read it 15 years ago and its perspectives still stand strong.
I like this, but, depending on the actual goal, I discovered that a meeting (Skype call, actually) is more effective. I would prefer e-mail discussion since it is asynchronous (you do not need to find a time-slot that is fine for everyone) and one can think with some leisure about the issue, but it seems that is only me. (Well, not only me: IETF discussions are mostly e-mail based, nevertheless...)
If you need to announce something, a mail is good; but if you need to reach a decision, even a simple one that can be discussed by e-mail, if you call a meeting you get the attention of the others; the e-mail (I have the impression) is easily ignored.
For full disclosure, I should say that I am not talking about meeting with other developers, but research meeting with colleagues in other universities (I work in academia). This means that we are not employees of the same employer and you need to rely only on the efficiency of your peers. This maybe changes the setting a bit.
Great read!
A couple of remarks:
1) In many cases, there's no need for emailing the agenda. If the meeting goal is obvious and the process well-defined, artificially creating an agenda that no one sticks to at the meeting might bring more distraction than order.
2) About the "laptops closed, phones remain in the pockets" - set the rule of "Bring laptop / no laptop" for the meeting and let everyone know upfront. If someone gets distracted and starts using their laptop at the meeting and no one cares, it might be that this person is not needed at the table. Allow them to check out.
3) An hour wasted is usually never an hour wasted - it's four hours, six hours or even ten hours - depending on how many people attended the meeting.
cheers!