Efficient Remote Work for Tech Teams
Remote work is here to stay. What are some practices which managers and team leads can introduce to promote healthy and efficient remote teams?
Q: Help! I'm a tech lead and my whole team is remote. What are practices I can introduce to help us work more efficiently?
Since the pandemic made remote work far more common, I’ve received several questions like this. Another common one is; “I didn’t sign up to manage a remote team! What should I do?”
I turned to James Stanier whom I’ve known since he released his excellent book Become an Effective Software Engineering Manager, which I reviewed and recommend. James is the Director of Engineering at Shopify, a fully remote company. He’s been working remote for 4 years, leading engineering teams of varying sizes throughout. He recently released his latest book, Effective Remote Work and I could think of few better people to give quality practical advice on remote work, than James.
This article aims to inspire you with some tools for your team’s toolbox, as we transform the biggest remote working experiment in history into – dare I say it – a ‘new normal.’
In this issue, James covers:
Everything and nothing has changed since the pandemic.
Treating everyone as remote.
Setting team norms.
The spectrum of synchronousness.
Practical tips for remote collaboration.
Over to James:
1. Everything and nothing has changed
I’m writing these words as I sit on a train, trying not to get distracted by the beautiful countryside passing by my window. I’m heading down to London for a few days to attend a conference and some satellite meetups we’ve arranged around it.
To catch the train, I drove about 40 minutes to Carlisle station, located in northern England close to the Scottish border. Sometimes, you can’t trust the estimates of mapping applications here because you can get stuck behind a slow tractor that’s too wide to overtake. Hey; that’s life up here. By the time I reach London Euston station, I’ll be about 320 miles from home. If you add another 50 miles or so to that total, you’ll get the distance which my family relocated two years ago, in order to completely change our lives.
The pandemic was the tipping point which made us truly see time wasn’t slowing down. Our parents weren’t getting any younger, and each opportunity to see them became more precious. I had a glimpse of a radically different future that didn’t involve commuting on trains like the one I sat on every single working day of the week. This possibility turned into a reality quite unexpectedly, and we took a big leap. But now we’ve settled, we have daily views of the coast and the Fells, and most importantly, the ability to be close to those who mean most to us.
We don’t regret a single thing.
After all, remote work is just work. It doesn’t matter where you are. It’s what you’re able to do during the time when you’re not working that’s the most important choice you can make. This is the shift many of us have experienced during the past few years: why haven’t we taken relocation for quality of life, as seriously as relocation for work?
I know I’m not alone. As an industry, individuals and workplaces are now navigating a new world where what has been granted – albeit reluctantly – can’t be taken back. Technology workers expect more flexibility and choice over how, when and where they work, and companies which cannot or will not adapt face attrition. Feet are casting votes, and fast.
We often talk of the ‘sunk cost fallacy’ as engineers – where we continue behaviours as a result of prior investment. It can arise during debates around refactoring or rewriting software. Companies are now facing their own sunk cost fallacy dilemma: many which spent significant amounts of money on office renovations, leases, and even purchases, may be tempted to pull technology workers back, in order to make that spend seem worthwhile. However, even those with the most impressive offices – and engineers – in the world, have found it hard to convince them to do so. For example, Apple – for years having the position that returning to work in its headquarters is mandatory, not optional – has recently admitted its remote policy could change.
We have to unlearn decades of habitual behaviour from location-centric office work and embrace a remote or hybrid future. With the engineers in our industry making it clear where they want to work, we all face new challenges as leaders, peers and programmers. The tricky part is it all feels so familiar, but it is simultaneously fundamentally different. We all do most of our work on computers via the internet, and the tools we use to work remotely are fundamentally the same as we used in the office. But the way we use them – and the intentionality of their use – is the key step-change.
Just as I’m sitting here on a train like I’ve done countless times during my life, and even though my destination is similar to before – and the WiFi is just as bad – the choice and reasoning behind my journey is nothing like it was in the past.
2. Treating everyone as remote
So, let’s start answering the question of how we can work better together, regardless of where we are. The first answer is surprisingly simple. It’s just a few words.
We should treat everyone as remote.
That’s it. It really is that simple, and it doesn’t cost anything. It’s a mindset shift. But here’s the catch; it isn’t at all straightforward to implement consistently because it involves the unlearning of countless habits we acquired over the course of decades of working in offices together. Achieving this goal involves tens, if not hundreds, of tiny habit shifts and holding each other accountable. We’ll list some actionable ways to unwind these old habits shortly. But you might be thinking: “which habits?” Well, perhaps I can jog your memory…
Before the pandemic, those of us who worked in offices and occasionally took a day to work from home, experienced the full effect of what happened when this rule wasn’t followed.
In the morning, we sat at our computers wondering why colleagues were not joining the video call, only to find the team had forgotten to dial in from the meeting room. Later in the morning, we remembered the architecture diagram which we were working on was drawn on a physical whiteboard next to the team, prompting us to ask one of them to kindly take a blurry photograph of it and send it over.
In the afternoon, while programming, we got frustrated because our two 27-inch monitors we usually have at our desk had been replaced for the day by a 15-inch laptop screen that can barely contain the code, let alone the server logs, telemetry and the debugger. When the weekly team meeting involved dialling into a room of people sitting round a table, distant from the camera and microphone and therefore barely audible, we probably wished we’d just taken the day off, instead.
During the pandemic, many of us were forced to be remote at the same time, thereby levelling the interfaces we all experienced with one another. None of us had the physical structure of the office; the whiteboards, meeting rooms, communal kitchens, which implicitly dictate how we interact. So instead, we all adapted and the experience of being remote – global health crisis aside – was possibly better than any of us had previously experienced.
As we begin to look forward towards a world that includes more remote and hybrid working, we’ve never needed our motto about treating everyone as remote more than we do right now. If we neglect it, we may slip back into our old ways of interacting, creating physical and remote silos partitioned by the different means in which both groups typically interact.
So what practical actions can we take to treat everyone as remote? Here’s some ideas to get you started. Remember, the key point is the way in which you collaborate should allow the same cultural experience, the same access to information and people, and the same ability to work efficiently, regardless of where you happen to be.
All meetings happen on video call with individuals dialling in. Even if most participants are in the same room, everyone should dial in with their own webcam and microphone. This makes the interface of the meeting identical for those not in the same room, and ensures everyone can see and hear the same things.
No physical artefacts are allowed; only digital. Collaborative drawing software has matured to the point where it is more featureful and interactive than any physical whiteboard. And most importantly, remote attendees don’t need to view the diagrams through somebody’s webcam in the office during a meeting. There’s no excuse for a whiteboard diagram being a canonical source of truth anymore; a collaborative diagram is editable, copyable, archival and able to support comments and suggestions.
The collective mind of a team must be captured in accessible documentation. In order to be inclusive to everyone, we must provide the same interface to knowledge, and this needs to work asynchronously. Therefore, documentation has never been more important for capturing the collective knowledge of a team. Correct use of READMEs, wikis, videos and written documents capture past decisions and form a frontier of the new work.
Essential information must be purposefully broadcasted to the whole team. It becomes the responsibility of everyone on the team to identify when there is information everyone should hear, and then to ensure that it can be. This typically involves taking information “up a level”, i.e. turning a DM into a summary in the team chat, or taking the contents of a meeting and summarising it to a wider group than the original participants.
All collaborative benefits of being in the office must have remote analogs. Fundamentally, the office used space to curate interactions implicitly; the kitchen served as a place for informal information exchange, and meeting rooms provided whiteboards for expressing diagrams and thought processes. Treating everyone as remote involves identifying all of these office interactions and providing digital equivalents, such as social chat channels, sufficient collaborative tooling, and for flexible time to be social as well as for working.
The best way to ensure your team, department or company treats everyone as remote is for the leadership to be remote for all or most of the time. By putting those who have the most power to enact change in this position, the sooner the culture will improve. Companies which offer remote work, yet have their leadership working full time out of an office, have no skin in the game for making things better for everyone. I would bet you that companies with fully remote leaderships have the best stipends and perks for working from home, and the most progressive policies.
So that’s the first answer to the question of what you can do to make remote working better for your team and everyone you interact with: treat everyone as remote. It’s simple, but not straightforward.
This makes for an interesting exercise with your team: if you were to imagine living by this motto right now, would you find the habits and practices you currently work with, help you or hinder you? What would you change right now? Which changes might be harder, requiring budget or buy-in from leadership?
I reckon you’ll be able to do a lot more than you think without needing any approval. Bring it up as a discussion and see where it goes.
3. Setting team norms
Now let’s take this a little further. In order to work better as a remote team, it’s important to make it absolutely clear how you communicate with each other. This further builds on the idea that offices have implicitly shaped the way we work without needing to show much intentionality: it’s obvious when we’re contactable because we’re right there, and it’s clear when we’re busy because we’re in focus mode. We can see when people go to lunch, and when they go home.
However, in order to be effective remotely we need to intentionally restore these indicators of how and when we communicate with each other in a way that lets us reap the benefits of the flexibility of remote work, without dialling up FOMO and anxiety to the point where we habitually refresh our messages every 10 minutes, just in case we’ve missed something.
You can do this by running an exercise as a team, in which you set your norms together. This makes what is expected of communication within a team completely clear, and the resulting norms can be documented for future reference.
The number of ways in which we communicate with each other daily can be numerous: email, chat, audio calls, video calls, pull requests, and more. Each platform has nuances and expectations which vary by individual interpretation. Which should be used and when? Do particular situations warrant a particular choice of platform? Is it okay to only check email once per day?
Within your team, you should aim to make the following clear: