Developers January 18, 2020

Need advice on how to build a remote-only development team

John Nguyen @luanng1411

Hi guys,

I'm planning to build a remote-only development team cause I want to reduce the cost for office, taxes, etc... So from the developer aspect, what are the things attract you for a remote job? And in order to make everything run smoothly, what are the things I'm gonna need (e.g: tools, services, etc...)? Many thanks

  1. 9

    You need 3 things at a minimum:

    1. A way to organize the work (JIRA, Trello, simpleboard.io, etc.)
    2. A way to deliver/collect the work (GitHub, GitLab, Bitbucket, etc.)
    3. A way to communicate about the work (Slack or whatever people use when not using Slack . . . AOL IM?)

    Getting more detailed

    Organizing the work:
    1a. A prioritized list of what to do.
    1b. A way to indicate what's in progress.
    1c. A way to indicate that something is complete.
    1d. A way to indicate that something has a problem (i.e. is blocked).
    The above is called many things by different processes, but regardless of what you call them there needs to be a mechanism in place or the team will default emailing back and forth.

    Deliver/Collect the work:
    2a. A place to test the work.
    2b. A place to record any problems (this feeds back into 1a).
    2c. A way to prevent problems in the future (unit tests, integration test, a test plan, etc.)

    Communication about the work:
    3a. An onboarding or getting started guide. What are the team's values, where can you find the code, what are the standards, where are the various tools, etc.
    3b. A communications pattern guide, which may be included in getting started. This lays out when to send an email, when to send a Slack, when to post on the JIRA/Trello/etc. card.
    3c. The preferred communications paths, including when/how to escalate an issue. A team which is well meshed and working together without routing through the top person will move more quickly than if they single-thread through the manager. People still need to know when/how to bring in a manager to resolve a problem.

    I hope that helps!

    P.S. I've read the Zapier and Gitlab material and it's good. Remote by Jason Fried and DHH is good as well, but I felt like it was more strategic than tactical. FWIW, I've been running 100% remote teams for the past 5 years and am likely to never to back to on-prem. Good luck!

    1. 1

      Great writeup! Very useful, thank you.

      1. 1

        Wow very useful, thanks! Also, may I know how can you attract candidates? I mean what are the things remote-worker usually look for? (e.g: benefits, flexibility, etc...)

        1. 1

          I would be looking for flexibility, but also having some routine helps. Eg daily standup always at the same time. But aside from those scheduled things, leave me do my work whenever I want or can.
          Also good communication tool that i don't have to answer all the time but can when needed. If this is s long term gig, then meeting face to face sometime would be cool too.

          Apart from that, nothing significantly different from a regular job.

        2. 1

          This comment was deleted a year ago.

    2. 1

      Awesome resource! Thanks.

  2. 3

    Zapier have written about this, I hope it’s helpful. https://zapier.com/learn/remote-work/

    1. 1

      Cool! Thanks for the resource

    2. 1

      Nice - thanks for the resource!

  3. 2

    Gitlab has like full public handbooks on how they work fully remote company...

  4. 1

    I've been working remotely since 2005, and I'm currently leading a remote team.
    A lot of good suggestions were already posted. I'd add one key suggestion - get a competent tech lead. This will most likely make or break your company unless you are good enough in tech, to know when things are going in the wrong direction (before everything starts falling apart). Expect to pay US level salary for a competent one.

  5. 1

    You already got a lot of good advice on tools.
    My advice would be : have your tech team be involved in the product. Don't just let them execute orders from a backlog somewhere. Tell them how the company is going, what the next milestones are, etc...
    When working remotely, it's waaaay easier to feel disconnected from the end product (and the clients), which leads pretty quickly to boredom.

    (I've been working remotely since 2013)

  6. 1

    I’d definitely look at enforcing some sort of schedule. I’m on a remote dev team, and it sucks when you need something quick and the other guy isn’t available.

  7. 1

    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.

    1. 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.

    1. 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.

    Good luck!

  8. 1

    Literally I have just put out a simple list of tools for small dev teams, you can have a look (not finished yet tho): https://stribny.github.io/small-dev-teams-software/

    Other than tools it will be mostly about the processes so that the work is being done efficiently.

  9. 1

    I would recommend getting someone experienced with software development on board to manage the team for you. Should you have any specific questions feel free to ask me directly: maj1337+ih (at) gmail

  10. 1

    There's a book called Remote by one of the guys who started Basecamp, supposed to be good

  11. 1

    Hello John, I want to let you about a project I've built to solve problems as yours, https://simpleboard.io, it will help you keep track of everything in the company like project updates, from where is everyone is working from (locations), everyone's current task/project and much more.
    let me know if your interested, happy to offer extended free trial to test everything

    1. 1

      Wow your product looks really cool :) many thanks, I'll definitely try it

  12. 1

    This comment was deleted 3 months ago.

Recommended Posts