Tag: distributed

  • Quick definition:

    A standup is a type of meeting commonly done in software development teams and now expanding to other knowledge working teams. During the standup meeting you say what you’ve done, what you are planning to do, and whether you need help or are blocked. Normally they happen daily and they are called standups because traditionally were supposed to stand up in front of your desk and just share with everyone else. The idea is that by standing up, people would be brief… that is often not the case (I worked at a place where standups would take between 20 to 60 minutes for about 6 people).

    The idea of the standup is that the whole team is on the same page, but in my opinion, most developers zone out until it’s their turn, they say their bit, and then they zone out again. The only person paying attention to everyone is the manager. And generally there’s nothing bad with that except that we are wasting people’s times.

    There’s a problem with the standup though, which is, at what time is it supposed to happen?

    • 9? too early for most developers
    • 10? ok for most, but those that show up at 9 will do nothing until the standup, because why bother getting in the zone if you are getting to get pushed out of it.
    • 11? now almost everybody spends most of the morning doing nothing because of the upcoming interruption
    • 12? just before lunch? maybe… at least people will keep it brief! But those that eat later will get annoyed by the interruption.
    • Any time in the afternoon? are we talking about today/tomorrow instead of yesterday/today? most people don’t plan tomorrow’s work and thus the what-will-you-do? part will be of low quality. Oh… and those that are not morning people will get their most productive time interrupted.

    The solution is very straightforward: asynchronous standup. People just give a brief report to the manager, but in a public space, about their plan for the day and what happened yesterday. I guess you could do it face to face, but that’s awkward. Text asynchronous standup are much better and they are friendly towards distributed work. They have a second advantage: track record.

    The standup is one of my most useful tools for management. I don’t expect members of the team to read each others report, but they are all public. If I notice a conflict or a potential synergy, I may ask someone to look at someone else’s report.

    If I don’t understand something, I drop a question. If someone has been working on the same thing every day for too long, specially if they mentioned they were close to finish, I have a chat with them (could be a task is problematic, blocked, a drop in performance, etc). If someone is planning on doing something that shouldn’t happen, I jump immediately.

    As a manager, it’s yet another opportunity for me to give encouragement to individual members of my team about their work, to thank them for doing the crappy tasks that nobody likes, etc. I sometimes push myself to do that, because otherwise the standup could start feeling like a useless bureaucracy, writing something that nobody ever reads, a thankless task. I want my team to know I’m reading it, paying attention, finding places to help, etc.

    I generally use Slack for text communication for my teams and my favorite app for asynchronous standups in Geekbot. It’s good if you are together, essential if you are distributed.

  • This is an essential tool that every worker on a distributed team or company should have, no exceptions: a headset. Let’s explore why.

    When working distributed you are going to be having a lot of calls and the quality of audio is important. All meetings are tiring the same thing work is tiring, but bad audio is a divider. The worst the audio is, the shorter people can sustain the attention to complex meetings. Not only that, but the cognitive load generally means that people get cranky, irritated, tired and that means wasting productivity.

    You want the audio of the other person to come directly to your ears. That will help you understand and hear, but also it will remove any chances of the audio getting to the mic completely removing the chances of any echo. Yes, software can kill echo, but generally that adds awkward micro silences at the beginning and end of someone’s speech that are very tiring.

    You want the microphone right in front of your mouth to avoid capturing your environment’s noise, the cars on the street, the AC or fan, the children on the patio (or your lap), the cat running around, etc.

    This formula is not new, it’s what we use in environments that are so noisy people can’t talk to someone sitting next to them and so critical that miscommunication can mean death, aviation:

    Just copying the aviation headset form factor is a good place to start.

    FAQ

    Can I use my laptop’s speakers and microphone?

    The microphone tends to be bad, capture audio from the speakers, generating echo, or vibrations from the cooling fans making a buzzing sound that can go from annoying to overpowering depending on the laptop and frequently they are omnidirectional making any tiny noise on your environment really loud.

    When someone uses a laptop I feel they don’t care about anybody but themselves. Everybody has to put up with their shitty audio while for them it’s just fine.

    What about headphones and my laptops or phone microphone?

    That’s a bit better, at least there’s no echo, but buzzing and background noise as well as bad quality voice are still there.

    What about my phone?

    The mic and speaker tend to be of poor quality and limited processing power on the device mean more frequent artifacts, but at least there’s no echo nor buzzing. Depending on the phone, the mic could be quite omnidirectional though.

    What about the phone in loudspeak?

    No… that’s almost as bad as the laptop.

  • There are two motivations that drive the creation of distributed teams or companies:

    • it’s cheaper
    • there just isn’t any available people locally

    There’s nothing wrong with these motivations as starting point, but if they become your sole driver for being distributed the results are probably going to end badly. Remote workers will be treated as cheaper handicapped workers and nobody likes being on that position. Soon they’ll find another better company to work for.

    Also, if you expect that a distributed company behaves the same way as a local one, you’ll end up with a dysfunctional organization (something that’s happening to a lot of companies during the pandemic, they are now distributed but they behave as if they are not).

    To build an effective distributed team engage the cool factor: we are all different, we are more diverse, we bring variety and we feel very strongly about living where we live. Celebrate the distributeness. This will not happen automatically and as a manager/leader at a distributed company, you have to make it happen. Same thing with socializing and bonding: it will not happen automatically as it might if you are all in the same room, and the manager/leader is in charge of making it happen.

    Here are some examples of things you can do:

    • Create a Slack channel where people can share pictures of their food. People will show off the good and bad of the food of where they live. People might end up exchanging recipes.
    • Follow news of the countries/cities where your staff is located and if something major happens, reach out to check on their well-being. Send the signal that you care about where they are, not just that they are far away.
    • Create optional and mandatory engineered social time for people to hang out together. A small amount of mandatory bonding is a good thing, because otherwise it may not happen at all (there’s no water cooler), but don’t force people to be away from their families for a gaming night to avoid losing status at the company.
    • Embrace hobbies, activities and lifestyles. People that work remotely they often care deeply about somethings, like their families, living in rural areas, having more free time, being able to work with constraints, hobbies that are location specific. Celebrate all of that.
    • Allow extra flexibility: don’t expect them to work 9 to 5, but know that they can still work hard or harder and even for more hours. Allow someone to break away from work to go pick up the kids from school in the middle of the day but they fixed a ticket in the middle of the night.

    If you want to learn more, I highly recommend The Year Without Pants. If you want some help distributing your company, feel free to contact me.