As members of a software company, we at Agape Red are well aware of how our work lends itself to remote collaboration. Many of us have been using video conferencing since its nascent stages, when webcams could be seen stuck to bulky desktops with duct tape and the delays were frustrating enough to make you want to smash your monitor, Office Space style.
But those were the old days – today, you will find the developers at the Agape Red offices any day of the week typing code into our MacBook Pros at a standing desk or sofa. We all have built in webcams, abundant cloud storage, and lightweight equipment we can take with us anywhere. For us, remote work can seem as easy as avoiding the commute and wearing pajamas all day.
But for anyone who has actually given remote work a try, you have likely learned that it is not always as easy as keeping your own snack cabinet stocked. At Agape Red, the strength of our team is our most valuable asset, and being a part of that team is the force that keeps us all working at peak performance. When you work remotely, it can be easy to feel disconnected from the camaraderie and shared knowledge that in-person teamwork can afford. After months of remote work, here is how I have learned to survive (and even thrive) without the office pranks, team outings for food truck Thursdays, intense in-office debates, and most importantly, without being in the same room as the peers and managers who help me when I get stuck.
Build trust with your team
During his 2017 RailsConf talk, “The Effective Remote Developer”, David Copeland cited a quote:
“The half life of trust is 6 weeks – it must be constantly replenished” — Steve McConnell
When you are not working in the office, your coworkers and managers cannot rely on observing you for eight hours typing at a keyboard to see that you have gotten all your work done. Having clearly communicated goals broken down into reasonable steps is crucial. At Agape Red, we use a Kanban board broken into specific “user stories” for each project. It is essential to communicate with your team about which tasks you are working on, which tasks you have completed, and which are keeping you stuck. When your teammates clearly know what you are doing and when, it is easier to collaborate to get something done.
Be available and responsive during your working hours for feedback or questions, and communicate when you will be stepping away from your desk. And when your working hours are over, have boundaries between work and life. Many remote workers, myself included, have time zone differences or scheduling items that may make their working day different than others on the team. Be clear about when you are available for meetings or check ins, and honor that – for the sake of your team and for your own health.
Communicate frequently – even on the small stuff
When I first started working remotely, I would often stockpile my questions or concerns in a list and try to communicate them all as quickly as possible in order to avoid “bugging” my coworkers too frequently. Working 7 hours ahead in the Central European Time Zone, this meant that I often had to wait hours to get an answer to a question or provide guidance to a teammate. What I have learned is that communicating often is a much more reliable approach to effective remote work.
Most teams these days use some sort of instant message tool, like Slack, to communicate with each other. Now, when something comes up that I need to talk to someone about, I pop it into Slack right away. I like to be sure to check in with others working on the same project as me, and be available for quick messages whenever someone has a question.
But just as importantly, perhaps, I like to keep an eye on the interoffice banter. Cheesy gifs and coffee jokes may seem like useless fluff to your workday, but keeping apprised of what is going on in the office, whether it be that your team member has adopted a new puppy that needs to go to the vet, or your team is taking on a huge new project, or we are out of meat sticks in the kitchen cabinet – these are the kinds of things that can keep you in tune with your team. And be sure to share yours and contribute, too!
Build your own feedback loop
One of the most challenging parts of working on a developer team is knowing whether you have done something correctly. More often than not, there are many ways to do something and not everyone always agrees on which way is the best. When you are working remotely, it is easy to feel siloed, lacking the guidance that you may otherwise get when your Chief Technology Officer stops by your desk and reminds you of a best practice or optimization tip.
That is why it is important to simply ask for the feedback that you need. Developers get busy, and we all know that sometimes what you think is a 5 minute problem can become a 15 hour debugging session. Developers get engulfed in what they are doing, and that can mean that when you want to double check that your concerns are properly separated or your scopes are fully optimized, it may be best to just ask for a second set of eyes. I promise the small amount of time you spend asking someone for feedback on something will help prevent bigger issues in the future. Plus, it helps you catch up on one of the other things that is easy to miss while working remotely – sharing knowledge with your teammates. And don’t forget to be available when others need feedback as well.
Be willing to learn and be flexible
Finally, it is important to remember that remote work can take a little more flexibility than in-office work, both on the end of the employer and the employee. There are times when a process may have to be adapted to accommodate the constraints of remote access, or someone will have to learn a new technology that they would not have previously used in order to collaborate effectively from a distance. Remember to keep an open mind to these new ideas and tools. You may even learn something new about yourself and your preferences along the way.