I’ve worked remote for most of my career, and I absolutely love it. We're going to see that remote work becomes the norm, not the exception. It's the future of work.
But working remote is hard. It's different. And we're just scratching the surface of what it means and how to do it well.
That's why I think it's important to share more perspectives on working remotely. I have different experiences, and can recommend different practices. This post is just that—a set of principles and tactics from my own experiences working on fully remote teams.
This post isn't an end-all-be-all, and not all of it will work for you, but it is filled with some pretty specific tactical stuff. That's why I've dubbed it a playbook. It gets into the nitty-gritty. It's stuff you can start doing with your team tomorrow, and start seeing results pretty quickly.
This post is broken down into a few sections:
- Principles: general guidelines for successful remote work
- Tactics: nitty-gritty specifics of things you can do to run a great remote org/team
- Challenges: concrete examples of rough patches, and how to deal with them
- Other resources: some of my favorite perspectives on remote work from other folks, so you can compare + learn—plus job boards + remote companies for you to emulate.
Principles of successful remote teams
Consistently share more, and share often. Frame and re-frame. Say it in chat, say it on voice chat, say it when you meet up in-person, have it in your emails, in your Slack, on your Trello board, and in your internal wikis. When you think a sentence will suffice, write out 3 sentences.
Get together in-person for play (not just work.)
Play time should be on company hours. It could be a quarterly 3-day hangout (we had these “team summits” regularly), twice a year company retreat, monthly visits, etc.
It doesn’t have to be pricey; it doesn’t have to include everyone all the time. My companies have done it by team, and sometimes, if individuals were traveling for fun we’d comp part of tickets if they wanted to hang out with a teammate nearby (e.g. going to SF for fun, we’d help pitch in if they also planned to work with our SF teammates.)
Sidenote: it's always funny when you realized you’ve developed such a close bond with someone you’ve rarely seen (“omg you’re WAY taller than I thought you’d be.”)
Make time for collaborative work sessions.
Getting together in real-time to work through something is important, primarily for the trust building, but also because it can rapidly speed up certain parts of work (like exploratory work, from strategy to finding bugs.)
I've found it works best when it's one-on-one, but I've had sessions with ~4 folks (any more and it's more a meeting than a collaborative work session.)
If you've ever had a paired programming session, you know how great it can be, and you also know how it's not a "all the time" thing. So take the same principles for pair programming, and apply it to design, product strategy, ops, and any other facet of your biz where you need a discovery / exploratory session to get a wider picture.
Remote has to be at core of culture.
Successful remote teams can't be tacked on to an office culture, it can't be a group of people in a room w/ a few folks on vid chat. You gotta be remote-first for best results. Remote + async + online have got to be the default modes of operating. This is the best way to make sure everyone's in the same mental space for great remote work.
Time is async by default.
Distributed means time doesn't fit your typical “9-to-5” narrative. It means you can't expect to stroll to a friend's desk last-minute to get a question asked. It means less interruptions and more focus time... which means if you're on the other end of that disruption, you may not get answers exactly when you expect them. And that's great once you make the shift.
Async by default means if someone's blocked, they'll do what they can and then switch gears. It means people will do their best work according to their own schedules (from night-owl, parent, early riser, and post-lunch-and-gym powerhour types.)
A lot of people see this as “oh no, we won’t get the thing done in 1-week even though it totally should only take 5 working days.” In reality, it’s “oh the thing took 5 working days over 3 weeks, and in the other 10 days we got a shit load of other important things done too.”
^^ An illustrated example of how remote work time expectations may differ from co-located reality.
An important comms practice, where when you start your day you check-in, and when you finish your day you check-out. The check-in states “what you hope to get done this session”, and the check-out states “where you’ve left off” and “what you hope happens next.” Some people like to think of this as a mini-standup and mini-review.
Morning folks! Picking up what’s next on the Welcome flow project today. Hoping to get a few explorations done by end of the day so we can get some feedback by tomorrow. Hoping that'll let us prototype by Friday. I’m hoping to connect with @Maria on the copy.
Signing-off shortly here. I worked through the Welcome explorations today, posted my thinking in #design, thanks to @Maria for the copy help. I'm not quite happy with any of my explorations yet. I'd appreciate takes from @Trisha and @Chris by tomorrow. Hoping to do a few more explorations tomorrow.
Team life calendar.
Sharing a calendar w/ life events helps set time expectations and team bonding. You can keep it pretty bare: birthdays and expected travel / time off. Team leaders are responsible for keeping it up to date.
It's a great way to keep people in the loop about upcoming events (“She’ll be out next week, so let’s make sure she’s had a chance for input this week”), and kick-off fun conversations (“Wow, you’re going to Japan next week! I have a list of amazing coffee shops there I bet you’d love.”)
Use screencasts to share ideas.
There are SO many ways to use a video screencast that step up the communication bandwidth. I love using screencasting to share ideas, concepts, working demos, bugs, interview sessions, etc.
Personally, I've found it super helpful for a product teams to stay aligned async around design (which is notoriously difficult to stay aligned on remotely.)
I won't lie—this can be pretty awkward at first. You'll do a bunch of takes. You'll forget that the mic wasn't on after you've done a 10m recording. You'll share it and realize you forgot to add that one thing. But keep at it. It'll get much easier, quicker, and more natural.
I'll usually use Cloud app, or record a screencast with Quicktime and share on Slack.
Bring yourself in text chat.
Lots of folks are timid about bringing themselves to work chat. It's totally undertandable. Most work cultures suck, and can feel unsafe to bring yourself. But the more you can bring yourself to text chat, the more you'll find yourself connecting closer with your remote teammates. At the very least, you can share articles you find interesting, post jokes, and talk about upcoming "surface-level" personal stuff like weekend plans or funny stuff your kids did that morning.
Sync regularly in real-time.
I find that 1:1s are very necessary. Try to prioritize video if folks are comfortable with it, though phone-time is plenty good. Even text syncs over a chat tool can be fantastic, as long as they're real-time.
The key == you’re sharing time together, so async doesn’t cut it. You want the real-time back and forth flow. It allows people to be more off-the-cuff, raw, and more themselves.
Posting status updates regularly helps team feel like stuff is happening, like they can pitch in when needed, and gives them control over when/if to jump in. It gives off energy and momentum. This also helps combat one of the biggest challenges with remote working—feeling lonely (more later.)
Keep meetings to ~25m or ~50m. If you must to go over, schedule breaks every ~45m. I haven't had much luck with half-day or all-day remote sessions (e.g. a 4-hr brainstorm and strategy session)—the kind that edges into "offsite" territory—because remote fatigue kicks in. See if you can break these up across a week, or actually get together in-person to do a legit ofsite.
Shorter meetings are great organization hygiene anyhow. Remote culture can really amplify it. It helps you think "does this have to be a meeting, or can it be an async message?"
Take advanage of not being in the office.
I often take calls outside while taking a stroll. Not because I need to, but because I want to. Oftentimes I'll connect with video for a few moments to say our hellos, then switch to audio-only once things got going.
It’s incredibly lovely to go outside for walks while you’re working through something with someone. More exercise, more sun, more “soft fascinations” all helps keep you mentally in-shape.
Weekly demos to celebrate.
A huge part of being a happy & successful remote team is celebrating your wins, and one of the best ways of doing that is by having a planned weekly demo.
Show off what you've been doing. Talk about stuff you're proud of. Show the rawness. This isn't a time to tear down, or critique, or ask about priorities. This is a time to celebrate the making + the maker. There's plenty of time later (async, "offline") to dig into those other questions.
The challenges of being fully-remote
I've worked remotely for ~12 years, so the challenges are something I've spent serious time with. I wanted to share a little more about the 3 most common I’ve experienced myself (and observed in others):
For new remote workers, the freedom is intoxicating. It's easy to get distracted.
A great way to enforce discipline is with a calendar. Set your week ahead of time. Block off time for heads-down stuff, and time for meetings/admin. Commit to a few synchronous meetings (weekly kickoffs, standups, and weekly reviews work well.) Create a workspace at home. Change out of your PJs.
Sharing concepts and feelings with other people is hard. Using text as the primary communication channel makes it even harder. It’s prone to negative bias. Feelings/physical cues don’t get conveyed. Even with voice or video chat, it’s easy to miss signals.
The best mantra to keep in mind is “overcommunicate!” — Great, clear writing can make a huge impact. When collaborating, write it down so folks can all agree on the same thing. Take notes all the time, and share them. Use emoji + GIFs to convey excitement. Chat about more than just work—talk about life, family, interests (if folks are open to chatting.) Continuously post what you’re working on, working through, progress, and when you take a break. Check-in in the morning with a “good morning!” or “ohayooo gosaimasu!”
This is by far the biggest challenge, and it doesn’t normally rear it’s head until you're comfortable working remotely (just when you feel confident, hah!)
To combat it, first accept that it’s a thing. Talk to others about it. Work from coffee shops or libraries to coworking spots to get some other human interaction day-to-day. Plan to meet up in-person with teammates at least a few times a year. Celebrate the little wins with your team. Show gratitude often, even for “little silly” things. Pair more. Mentor another person. Set up a weekly chess match with a team friend. Lean on your 1:1s to be raw. Show more emotion, be more vulnerable.
Further reading on remote teams:
- I think the most robust writing on remote work is Basecamp’s book REMOTE — it’s a thorough guide to distributed teams, packed with great principles. I can't recommend it enough, seriously. Get it.
- Legit research on remote teams (inc. comprehensive pros and cons) by Rebecca Downes
- It's not just about productivity: working remotely lets you spend more time with people that matter, like your family and friends
- The "This Is Product Management" podcast with Sarah Kuehnle of Dribbble is one of the best in-depth discussions of remote tactics that I’ve come across
- Two Twitter threads on topics people struggle with (and want to learn more about) when working remotely: first and second
- 7 unusual / mental health-ish tips for remote workers, things like starting with gratitude, and ditching the guilt (aka. why remote work can be great for mental health)
Remote-friendly job boards:
- AngelList remote job collection
- Authentic Jobs remote collection
- FlexJobs <-- inc. part time work
- Remote OK <-- probably the most exhaustive one
- Remote Friendly
- Stack Overflow remote job listings
- WeWorkRemotely <-- one of the oldest and most trafficed
- WiggleWork <-- inc. part time work
- Working Nomads
It's never been easier to find a remote job. With all these remote-focused job boards, and a ton of roles from design to customer support to leadership, it's only a matter of time before you find a great remote role for you.
Fully-remote (mostly) companies:
- GitHub <-- now Microsoft, which also has plenty of remote work opportunties
- Toptal <-- also worth freelancing on Toptal
- Basecamp <-- the OGs
- Violet Stack
- Khan Academy
- HubStaff <-- LOVE this post from them
- Fog Creek
What's amazing to me about this list is how high-quality a lot of these companies are. The more time that passes, the more we'll see the best companies being remote-first (as opposed to "open to remote".) Stay tuned here as I'll update this list with more companies over time.