Developers January 18, 2020

How to manage a remote team - a developer's perspective

Anthony Castrio @AntCas

X-Post from a comment I made on this post.

There's a pretty big knowledge gap right now between people who want to run remote offices and people with experience running remote offices. Very few companies have figured it out, but this is the decade we'll see that change. Check out Buffer, Zapier, and GitLab for some example of companies that have made it work and are publishing information about how they run their companies.

Now, from personal experience working as a remote developer and sometimes-manager, here are the things I'd start with.

  1. Chat-space
    You need something like Slack or Twist to be home base. I haven't used Twist yet, but for Slack I think it helps a lot to turn off all notifications except remote-mentions off for everyone. Otherwise it becomes a big distraction.

  2. Project Management
    Trello or a kanban board in Notion work well for this. You need a way to track who's working on what and where they are on that task. Todo, Doing, Done, Blocked are categories that work well. Start simple, you can worry about adding power features to the boards when you need them.

  3. Documentation
    For a tech-team, documentation lives in a few places. In the code, in GitHub (commit messages, PR descriptions), and 3rd party sources. If you're already using Notion, then Notion becomes a good place for this and everything else you want to keep track of.

Good written communication is the crux of remote-team success. Hire for people that can communicate well in writing.

Finally, be quick to jump on the phone if you ever feel tension building in chat or feel like you're talking past each other. Switching mediums relieves tension. BUT, make sure you write down anything that comes from that phone call and post the summary, at a minimum as a slack message to the other person. If the whole team is affected then post it in your #general or #engineering team channel on Slack too.

Remote teams executed well can be more productive and much leaner than colocated teams. This is the decade we all figure out together as an industry how to make that happen.

  1. 2

    Thanks for the wonderful post!
    It's been a while since I moved to remote work and honestly, it's harder than it sounds.
    As a team leader, it's my job to choose which softwares and systems work best for our company, so this took a while.

    I ended up choosing Zapier for publishing posts and checking growth rates. It's easy to use and has many integrations that help keep track of things.

    For collaboration systems/todo list, my team decided to go for Quire, a free project management software that also has a Kanban board and provides offline syncing. Also integrates with Slack and Zapier, so that's a plus, since my job requires us to use both of these apps.

    I haven't used Notion before, but thanks for the recommendation. I'll be sure to give it a try!

  2. 2

    I was a tech lead on my last project and managed a team in Chennai City , India while I was in a hotel in Madison, WI.. It got more difficult because I had to manage to remote teams actually, the front end React Team was in Kochi , India and the back end team was in Chennai. I learned some Tamil which is a fun language. The 6 month project was successful. We had allot of bugs and at one time 50 PBI's in 1 Sprint !!! The key is to be calm, and always ask questions and encourage both teams that this is a team effort. We fail forward, we learn and we don't stop. The last 10% of the project is just as much focus as the first 90%. Near the end people can start celebrating too early. As a tech lead you can't do this. you must be focused from A-Z that's your job. I had my clashes with the Product Manager and wanted to punch him in the face and I remember that 90% of the shit we think about will never happen. Being self controlled is key and most important admitting when you are wrong and asking for HELP is a Strength not a weakness. Shout out to all my devs in Chennai and Kochi! It's a success we will all cherish forever. ReactJS and .NET CORE went like peanut butter and chocolate .. NodeJS is great too.. for I/O... anyways.. I enjoyed this topic, about managing remote teams. Mind you this was my first time managing and I lied and said it wasn't my first time when i got hired.. I figured how hard could it be ? The key was have a positive perspective and take full responsibility and you will see how other developers will put in the extra effort to get it done !! and on time within the budget and all deliverable's complete . Cheers Castro !! from Mikey Famous in Vegas

    1. 1

      How was it dealing with the timezone difference? Any advice for people working with a big time difference?

      1. 2

        I think moving towards some form of asynchronous communication is highly advantageous when working across timezones. It removes the expectation of people in certain timezones working in humane hours and gives all members the opportunity to contribute and provide their opinions

        1. 1

          This is key.

  3. 2

    You mention jumping on the phone, but I am curious what are your thoughts on video calls?

    1. 2

      I like them both, comes down to personal preference. Agree with Twambit that video can be more distracting than audio. Personally I like a weekly video 1:1.

    2. 2

      most devs are uncomfortable on the video.. its actually more distracting with all the visuals... audio works like a charm ... audio > video

  4. 2

    Thanks for sharing your personal experiences.
    How does email fit into all of this, has it been completely replaced by slack?
    If you are switching off notifications on slack how do you deal with the anxiety around missing important conversations? Do you just assume that if it’s important enough someone will call you about it?

    1. 2

      Pretty much.

      I rarely if ever use email with teammates. It's still important to me for customer service and reaching out to new people.

      The anxiety Slack brings comes from never knowing when you're going to get a message. It's very distracting in an individual contributor role. In a manager role, you might want notifications on, since your job becomes more about enabling others and being available to unblock them asap.

      If something is urgent or needs my attention in particular someone will @ me or call me.