This is an updated version of a talk and guide I wrote / delivered / published internally at a work retreat in April 2019. I’d be interested in your thoughts on the matter – feel free to get in touch with feedback.
In mid-2016, I left my job at Google, moved across the other side of the world to Berlin, Germany, and started working as a programmer at Sendwave. Sendwave is an entirely remote company – there’s no physical office, and I only see my colleagues face-to-face every three months when we meet up in person on retreat. This wasn’t my first time working remotely – I also briefly worked remotely with Doctors Without Borders on the EMR-E project in late 2015 – but short-term remote work is a different experience from something longer-term and permanent.
Remote work is, on balance, great, but one of the disadvantages compared to a normal job is that it’s harder to switch off from work in your lunch break, at the end of the day, or when you’re on holidays. You see, remote companies are built on the ability to contact your colleagues using technology; which means you need to be much more deliberate about how you use the technology in order to maintain separation between your work life and your personal life.
Here are some techniques that I’ve used to create and maintain separation. You might not want to use all of these, and your job might be such that you’re not able to use all of these, but hopefully, they’re useful to you.
Fundamentally: Be willing to test the assumption that if you’re unavailable everything will go horribly wrong
For me, the feeling that I can’t switch off or take vacation comes from a fear about what will happen if I’m unavailable and something goes wrong. Learning to actually test this assumption is crucial. Even when stuff has gone wrong when I’ve been unavailable, other people have been able to take care of it. Here are some examples:
- I’d been working on our backend server performance for months before Christmas 2018. The 23rd of December is typically our biggest day, and I was around and prepped for anything to happen. The 23rd was fine, but everything caught fire1 on the 24th. My phone was on airplane mode because I was at a Christmas dinner. Our on-call engineer tried to get through, and couldn’t. It sounded like a pretty rough day for her, but everything was ok in the end. The business is still running and we didn’t lose customers.
- On Saturday the 6th of April 2019, our SSL certificate expired, which means it was no longer possible for (a) users to access the app (b) our support teams to receive phone calls2. I woke up to see I’d missed a phone call at 3am from the CTO. Turns out we had extra technical complications which I knew about more than anyone else on the team and hadn’t documented 😅. It took about 12 hours to get everything completely resolved, and was an amazing team debugging effort between the CTO and two of our other engineers from other departments. Because I had context, it probably could have taken about 3 hours to get everything fixed if I had been available. The difference in time-to-fix is such I would’ve been ok with being woken up! But the important lesson here is - the business is still running, I don’t think we lost customers, my teammates aren’t angry at me for not picking up and now we have a strategy to prevent it from happening again. Definitively not a complete disaster.
I think it’s important to write down examples like this. Writing them down serves as a useful reminder to me that:
- I’m not the critical link in my team: my colleagues are incredibly capable and can take care of issues, even if they don’t know exactly what’s going on for a particular issue
- When catastrophic failures happen and I’m away, they’re never as catastrophic as I think they will be
- My colleagues won’t hate me for missing their calls.
There are a lot of overachievers in software engineering, and it’s good to work hard – but it’s an easy trap to believe that things rely upon you to keep functioning. You’re definitely employed for a reason! But the company will probably survive without you, and that’s a really good thing.
It’s also worth noting that in some companies, the issue won’t be an overzealous sense of personal responsibility, but instead the organisational culture and corporate pressure. I’m personally lucky in that Sendwave explicitly values work-life balance and I’ve worked there for a while, so I feel safe in holding them accountable to that. These conditions might not apply to you. If you’re in a position where you’re extremely reachable because of organisational pressure or an ‘always-on’ organisational culture, then I’d encourage you to test your understanding of what the organisation requires of you by:
- Having explicit conversations with peers and your manager about it, and
- Stretching the boundaries a little and seeing what you can get away with3.
Now that we’ve got that out of the way, everything else in this document is practical techniques for doing a better job of making yourself unavailable.
Use a separate computer for work and home, or, if you share a computer for both purposes, create separate user accounts
In previous jobs, I’ve theoretically not been authorized to use my work computer for personal reasons. At Sendwave, I’ve preferred to use a single laptop, and then create separate OS-level user accounts for “Work Fabian” and “Regular Fabian”:
This means that, when I finish work for the day, I can log out of the “Work Fabian” account, and none of the tools I use to stay in touch with my colleagues can hijack my attention:
- Slack is not accessible, and can’t grab my attention
- Quip / Google Docs is not accessible, and can’t grab my attention
- Skype is not accessible and can’t grab my attention
- I can’t accidentally open my work email when I’m trying to access my personal emails.
This has the additional benefit of being good for focus (I can’t access Facebook from my Work account, and have to switch accounts to get to it, which creates friction) but the primary goal of this is not focus, it’s to make it difficult for you to accidentally see work stuff when you’re not working. Go ahead and check football scores from your work account; do not check Slack from your personal account.
It’s not hard to set this up! Apple has instructions here on how to add new user accounts.
A few caveats about doing this:
- This may be against your organisation’s IT policy. Check in with your IT team / your boss before doing anything that could violate your company’s policies.
- Set a strong password on the second account you make. The security of the entire computer depends on the security of every individual account. I’ve personally used the same strong password for both the “real life Fabian” and “work Fabian” accounts. Normally you shouldn’t share passwords between accounts and should use a password manager instead! But computer unlock passwords stay on the device itself and shouldn’t get shared anywhere, so the risk of compromise from using the same password is pretty low.
- If you’re a computer programmer and use Homebrew, using the default
/usr/local/install location will get messy fast. I’d recommend maintaining separate Homebrew installs for the different user accounts, or otherwise, if you can’t afford the disk space, there’s some ideas for solid multi-user installs of Homebrew on StackOverflow.
This will take a few hours to get set up. That’s ok! Think of it as an investment in your future productivity.
Set rules around the hours you work
I try to work six-and-a-half hours a day. Any more than this and I’m completely exhausted, and it’s not worth it. Some days I’ve done 7:30 hours, and then the next day I’ve only been able to work 4 before running out of energy. Right now, I’m using a semi-structured routine to make this work:
- I usually start work sometime between 8:30-10am and work for 3:30. The first part of this is reading slack and email, and planning how I’m going to spend my time for the day. Then, focussed programming time while my US-based colleagues are asleep.
- After that, I take a lunch break til 3pm. On days when I start at 8:30, this means I’m off from 12pm-3pm. On days when I start at 10am, this means I’m off from 1:30-3pm. In my lunch break, I’m not reachable by work unless I’m on call. Sometimes I run errands, sometimes I cycle to a cafe and read a book for a couple hours. Three hour lunch breaks are a lifesaver in the Berlin winter - it’s the one thing that ensures I still get enough vitamin D during the shorter daylight hours.
- From 3pm-6pm is when most of my US-based colleagues are online, so this timeslot is usually littered with meetings.
Limiting the amount of time I can end up in meetings is pretty important for me. This happens naturally because of time zones, and artificially because the long/late lunch break – I’m effectively guaranteeing that I have a maximum of 3 hours of meetings per day. There are other ways of doing this, such as scheduling gym classes at a certain time, or scheduling your lunchbreak on your calendar. I think there’s value to aggressively prioritising your meetings against each other in addition to your individual contributor work, and not letting your individual contributor work get relegated to being something you have to do at night. Setting up these time blocks is a structure that’s allowed me to achieve that.
It’s important to record the time you spend working so you can track these details. I currently use RescueTime for this, which tracks what you have open on your computer and for how long. This works well because I’ve created a separate user account for work on my computer (see Create a separate work account) and because all the time I’m working, I’m working in front of a computer screen. Writing stuff down in a notebook or a spreadsheet works well too. I think I prefer keeping records in a notebook but I always end up forgetting, hence why I rely upon RescueTime. It also gives you nice graphs like this, which can help you gauge your balance between IC work and meetings:
Turn off Phone Notifications
Seriously. All of them.
For the last three years, I have both Slack and Skype notifications turned off on my phone. This includes calls. This has had no adverse effect on my work.
Turn them off in the settings on your mobile phone. On iOS: Preferences → Notifications → Flick that switch that says Notifications allowed to OFF.
What if I like notifications and find them helpful to my work? Great! but it’s a pain to turn them off and on again after you finish work for the day. In this case, I would talk to my lead about getting a separate work phone.
Create a separate accounts for any web services you use for work
You probably already have separate work and personal emails – but you should also keep separate work accounts for any other services that you use too. For me, the only service that I use for both work and non-work is Skype, so I’ve got a separate Skype account tied to my work email and one tied to my personal email. In my case, this means that if I’m video calling friends in Australia, I don’t accidentally see Skype chats with my colleagues or some of our business partners.
For developers, Github / Heroku / AWS / Google Cloud are other examples of accounts that you should do this for. You’ll probably find that your AWS / Google Cloud / Heroku etc access has been provisioned based on your work email, but Github is somehow a domain where people tend to use their personal accounts more. If you opt to not create a separate account for Github, note that you can control which email address notifications go to on a per-organisation basis under the ‘Custom Routing’ header in your Github Notifications Settings, which gets you 90% of the way for 10% of the effort.
Regain control of when you’re reachable by phone
There are heaps of options for this, and their applicability depends on exactly how reachable you need to be in emergency situations. This varies from person to person within every company, but the point of this task is to be intentional about it. If missing a call about a company level emergency would result in the death of the company, maybe you need to go easier on this section.
With that said, here’s a few suggestions:
- At night, switch your phone off and put it in a drawer. The actual process is really cathartic and sorta teaches your body that “ok, it’s time for bed now, no more scrolling the internet mindlessly”. Similarly in the morning, having to go and find it and then switch it back on again gives you a level of friction that makes you stop and think “am I ready to open this can of worms yet?”. It helps you to regain intentionality over something that’s designed to be addictive.
- Keep your phone in Do-Not-Disturb (iOS, Android has an equivalent but I’m not familiar with it). You can set it up in a few ways - my favourite is:
- “only allow calls from Favourite contacts”. My “favourite contacts” includes my family, a few close friends and Pagerduty 😅
- Turn off the setting that allows repeated calls to go through. You really don’t need this, and people have wised up to the fact that they can call you repeatedly to get through this barrier now.
- Whitelist access to your phone number: remove your phone number from work profiles (Slack, Google Profile, Active Directory), and then only give it to a handful of colleagues who should be able to contact you in an emergency.
- This suggestion was treated as relatively extreme when I floated it at Sendwave. It’s possible also too specific to the exact context of that company, and it ignores the fact that you’re probably friends with some of your colleagues and have each other’s phone numbers for non-work reasons (though, those who are your friends are hopefully also more respectful of your wishes to switch off). I think I would generally recommend talking to your lead about getting a separate work phone instead.
Talk to your lead about getting a separate work phone
This is the ultimate solution to creating boundaries, because you can literally switch off your work life and put it in a drawer. If you’re someone who is expected to be reachable by phone or Whatsapp (common at Sendwave) as part of your job, I would strongly recommend doing this because it allows you to switch off completely when you’re vacation.
There are variations of this that are less inconvenient – for example, getting a dual SIM phone and switching off / taking out the work SIM – but it’s going to be a much, much cleaner separation with a separate phone4.
I have not personally done this - if you have and have advice please let me know, I’d be curious to hear how it panned out!
Just talk about it
Finally, make sure you’re having explicit conversations around boundary setting on your remote team.
I originally wrote this document because people within my company were not talking about these issues enough and I wanted to create a culture of effectively supporting people to work remotely, well. Remote teams need to be much more explicit with communication norms than in-person teams, and the vast majority of energy spent on context sharing goes to communicating what people are working on, rather than how people are working. In a normal office you learn new work techniques by just observing and chatting with your colleagues day-to-day; but this option isn’t available in remote companies. Intentionally talking with your colleagues about how you get your work done can pay enormous dividends in lieu. You can get the conversation started by sharing this article with them :).
By “everything caught fire”, I mean “transactions were delayed by up to an hour”. It wasn’t an actual actual disaster, but it definitely represented a degradation in service for our users. Sorry customers ❤️ ↩︎
Yep, there are lots of better ways of architecting this than what we had at the time. We know, and it’s something we’re fixing. ↩︎
This is obviously dependent on your sense of security within the company and how much you care about the job. If you’re in a job you really need and don’t feel secure in, then don’t jeopardise it. The corollary is, if you’re in a job that you do feel secure in and you can challenge these norms a bit, but your colleagues couldn’t necessarily because they don’t have the same job security / privilege as you, then do everyone a favour and try and stretch the norms for the benefit of everyone. ↩︎
For example, you wouldn’t be able to have a separate work Whatsapp if you only had one phone, because Whatsapp can only be registered to one number on each device. ↩︎