There are lots of advantages to working away from the office, both for developers and for the companies that employ them. Think about avoiding the daily commute, the cost of office space, the cost of living in or traveling to the city for rural or international workers, the inconvenience of office work for differently abled people or those with unusual family or life responsibilities, and the inflexibility of trying to keep traditional 9–5 hours as more and more of our workforce adapts to the gig economy by taking on second jobs or part-time side hustles.
Remote work can help address many of these difficulties while improving team transparency and putting the focus of work back on the reasons you were hired for your job in the first place. It also opens up a world of possibilities for companies, including broader recruitment opportunities, improved worker transparency, lower infrastructure costs, and more scalable business models based on actual worker productivity.
But working from home or from a co-working space can also present new challenges, and learning how to recognize them and overcome them can make the difference between a productive, happy work experience and endless hours of misery, loneliness, and frustration.
Think I’m being overdramatic? Let me explain.
I’ve had the experience of being the remote worker who didn’t think he needed to pay attention to interpersonal office dynamics, or keep track of his time and accomplishments. I’ve worked long into the evening because I didn’t notice when the work day ended. I’ve struggled with inefficient tools that might have worked fine in an office environment, but proved woefully inadequate when it came to remote collaboration.
So I’ve learned to cope with these issues myself, and for years I’ve been coaching engineering teams by working on-site, remotely, and in various combinations of the two. Depending on your situation, there are a number of useful tools, tricks, and fundamental practices that can make your remote working experience so much better than it is today — for yourself, your team, your manager, and your company.
Looking for your next role? The SitePoint Remote job board helps you find the best remote jobs in tech.
For better or for worse, most of us are used to having a manager decide what our working hours are, where we’re going to sit, what equipment we’re going to use, and whom we’re going to collaborate with. That’s a luxury that comes with the convenience of working together in a shared space, where management can supervise and coordinate our efforts. It may not always feel luxurious, but you may well find yourself missing the support of an attentive manager when you start working from home and realize you have to make these decisions for yourself.
Set a Schedule and Stick to It!
The first tip I offer for anyone starting out a remote role is to establish the hours you’re going to work, and stick to those hours.
It’s not as easy as it sounds. When you’re working from home, you won’t have all of the little cues that come with office life to tell you when to pause for lunch, when to take a break, and when to stop working for the day. Working from a co-working space or a coffee shop can help, but it’s not the same as having your colleagues around you to exert that not-so-subtle social pressure. What’s more, if you start to feel anxious about whether people at the office know how hard you’re working, you may find yourself wanting to compensate by putting in a few extra hours.
Some people find that it’s easier to compartmentalize remote work by using a co-working space, simulating the effect of going out to work and then coming back at the end of the day. If you’re working from home, your professional and personal lives can start to blend. You’re going to find yourself washing the dishes, feeding the cat, answering the telephone, and attending to all the other chores that crop up in your living space. And you know what? That’s just fine! … as long as it doesn’t start to interfere with your productivity on the job.
Decide up front on your morning and afternoon work hours and respect them. Write them down somewhere you won’t forget to see them, so you can’t pretend you don’t know what they are. The same advice applies to teams working together in an office or people using co-working spaces, but it’s even more critical if you’re working from home.
Let Everyone Know When and Where You’ll Be Working
Building on the theme of scheduling, a remote worker needs to let anyone who works with them know how to get in touch, and may need to encourage that kind of contact regularly. Remote workers can feel isolated or even excluded — left out of important decisions because people at the office simply forgot about them. It’s up to the person who’s working off site to make their existence known throughout the work day, and to advocate for visibility.
This can be easier said than done. One of the advantages of remote work is the ability to focus without interruption for extended periods. Sometimes just the knowledge that the bubble of isolation can be broken is enough to foster distraction and make it harder to concentrate. This can make the experience draining and unproductive, and negate most of the advantages.
It’s not a bad idea to start off just using email to stay in touch with the team for typical group communications. And as a personal productivity tip, try to establish set times during the day to check that email — perhaps three or so over the course of a day. Checking your email constantly can establish a pattern of behavior that puts your attention at the mercy of anyone who wants to reach out to you for anything at any time. Email is asynchronous by nature, so use that to your advantage when you’re working from home.
Apart from direct communication, it’s good to get your team using a messaging tool such as Slack or HipChat. These services can run in the background on every team member’s computer, or even on their mobile devices, providing a shared space for inter-team, intra-team, and cross-functional messaging. There are secure ways for companies to make services like these available for sensitive internal communications, and they can work both on site and off site, establishing virtual shared message boards to keep teams aligned.
Plan for Urgent Communication
But what if somebody needs to get in contact with you right away? Of course you’re working, so you should be available to your team in case of an emergency. Depending on how often this sort of thing occurs in your type of job, it’s a good idea to offer your team and your manager a backup way to get in touch with you directly for urgent communication. Texting or telephone calls can work for this, and the group messaging tools I mentioned also support notifications, but some teams like to use a third-party application that’s not tied to the company and supports group chats and notifications such as WhatsApp or Telegram, especially when the team has international members.
In fact, it’s not a bad idea to have everybody on the team make their emergency contact information available in one centralized location. This is one of the enhancements that show how supporting remote workers can improve the productivity of an entire team. Just pay attention to whether people start to abuse the privilege, and manage expectations appropriately.
Once you’ve established a workable schedule, get feedback and buy-in from anyone you need to coordinate with on a regular basis. Doing this consciously can help you recognize when you need to be focusing on the job, and when it’s appropriate to step out for a bit of shopping. Most importantly, it helps you decide when the day is over so you can turn off and truly relax, knowing you’ve completed your work.
Establish Work Space and Equipment
You may think that the logistics of working at home will be as easy as rolling over in your bed, pulling out your regular laptop, and logging in to the office computer. That can work, but it may not be the most productive approach. It’s important to establish clear distinctions between your work and home screen time in order to help you focus when you’re working, and relax when you’re not.
The first thing to do is to secure dedicated equipment that you can use for work. If you try to use your home computer, you’re going to find yourself distracted very easily by non-work projects. You might be surprised to discover how appealing that unfinished work project sitting in the corner of your desktop can be late when you’re off the clock. Work can eat into your personal time when you should be refreshing your mind with other ideas.
There are potential financial and business implications as well. Using your home computer for work means you may be spending money on duplicate software or balancing work across different versions of the same software, let alone the the wear and tear on your equipment. That’s an expense that should be supported by the company you’re working for. There may also be significant security issues associated with using personal equipment for work. You may be creating hidden security issues for yourself and your company.
It’s a good idea to establish dedicated space in your home for work. It should be an area that you can isolate from your personal life so you won’t be distracted. Even if you live in a studio, you might want to set aside a small desk or table in one corner, facing away from the rest of the room, that you’ll only use for work. It’s much harder to slip in a few extra hours of work when it involves moving to a different space and using separate equipment. And depending on where you live and your employment status, there may also be tax incentives allowing you to write off a percentage of your housing costs for space that is dedicated to work.
Your home office may not need to be completely soundproof, but you should keep in mind how noise might affect your ability to concentrate so that you don’t have to tell anyone you live with to turn off the television or shut down their lives just because you’re working. You may need to barter for quiet time with roommates when you have to participate in remote meetings where noise levels can be an issue.
If you have a separate room where you can work, all the better. That will allow you to close the door and focus while you’re on the job, and then make a clean break from work at the end of the day. Just be sure network access, power, lighting, and seating ergonomics are all suitable to support the span of your work day.
Having the right tools, both at the office and away, can make all the difference for remote workers. Software and online services can be used to help you stay in sync with your teammates, track and share evidence of what you’ve been up to outside the office, and calm any nagging concerns about how you’re spending your time. In some cases these may be tools you are already familiar with, but you may not have taken advantage of the ways that they can be used to support remote team members.
Stay Involved in Meetings
It’s a hurdle to get teams used to working together in a physical space to include people who are not in the same room at the same time. But as much as you may try to avoid meetings, these are the times when remote workers need to make their presence known most.
Using a shared scheduling tool such as Google Calendar or Outlook can help formalize meeting times, and make sure everyone who needs to know about the meetings gets the message. And services such as Skype or Zoom can help make meetings more inclusive for geographically distributed teams. These services support live multi-person conference calling with audio, video, and screen sharing features that can even include on-screen collaboration with remote screen control. If you can get your team to create a shared meeting space in your favorite collaboration tool, and to initialize it at the start of every meeting they have, you have a better chance of staying involved.
A meeting is a great opportunity to make up for the lack of interaction that comes from working in a different location. Learn to ask questions, participate in the pre-meeting and post-meeting banter, and generally make your engagement known. Much of the value of working on a team comes from the interpersonal dynamic and shared sense of purpose. You don’t want to lose access to that aspect of the job just because you’re not breathing the same air as everyone you work with.
Track Your Tasks and Accomplishments
Your career is your responsibility, and doing what you can to make sure your manager is aware of your struggles and successes is critical regardless of where you’re doing the work. It’s easy for the details of daily work to be ignored, and many traditional companies accept that tradeoff as long as they can see workers sitting at their desks. Remote work breaks that anti-pattern, and rightly puts the focus back on what you’ve actually accomplished with your day. As the person working off site, it’s your responsibility to make sure the work you’re doing is tracked and recognized.
If you’re doing development work, it’s possible your team already uses tools such as JIRA or Pivotal Tracker to define and evaluate the progress of work. As long as you can get to these services and keep them updated, you may not need to do much more than that.
For many of us, the project work we take on is not always as clearly defined. In those cases, it’s useful to establish a system for prioritizing and tracking your own work. Tools such as Basecamp and Trello are excellent for this purpose, providing a structure for defining tasks and updating their status easily and transparently as you go. The flavor of tool you choose depends entirely on your comfort and the features you prefer.
Remote Pairing and Mobbing
With the growing popularity of team-oriented agile approaches to development work, it’s reasonable to assume that not everybody is working alone on individual projects. One of the advantages of working as part of a team is that you get to leverage the skills and abilities of your teammates, and working remotely shouldn’t get in the way of that. But what if your team has adopted pairing or mobbing, where two or more developers work together with a shared screen and keyboard?
Setting up your workplace to support remote workers can be an advantage for teams that pair and mob. By making sure that information sharing and collaboration tools are available both on site and away, teams get the opportunity to think through the transparency issues that come up when they have resources and data that need to be available across the team. This can lower the bar when it comes to the logistics of getting remote workers set up as part of a pair or a mob.
In recent years, a number of excellent tools have popped up to make it easier to support pairing and mobbing across different locations. One of the earliest tools for sharing screen control was Screenhero, recently integrated into Slack, but now several other conferencing tools and integrated development environments have integrated remote screen control features, making this ability more commonplace. Which one you choose may come down to personal preference, but you can check out a few and see for yourself what makes the most sense for your team.
Accept the Tradeoffs
Working away from your team is not a decision to make lightly. Even in companies where remote work is part of the culture, it’s easy for difficulties to go unnoticed and fester for years without resolution. The potential advantages are numerous, but you don’t want your job satisfaction undermined by lack of preparation for some of the more predictable challenges.
If you have off-site co-workers, check in with them and find out directly how they like the experience. If you’re introducing this idea to a team or an organization that’s not used to the idea of supporting remote work, use this article as a starting point and put together a coherent argument in favor of remote work that will address your company’s concerns as well as your own.
I've worked as a Web Engineer, Writer, Communications Manager, and Marketing Director at companies such as Apple, Salon.com, StumbleUpon, and Moovweb. My research into the Social Science of Telecommunications at UC Berkeley, and while earning MBA in Organizational Behavior, showed me that the human instinct to network is vital enough to thrive in any medium that allows one person to connect to another.
Jump Start Git, 2nd Edition
Visual Studio Code: End-to-End Editing and Debugging Tools for Web Developers
Form Design Patterns