Remote working: how we do it at Agility Systems

At Agility Systems we operate as a remote scrum team. During the day we individually focus on serving our clients. To facilitate the business of Agility Systems we’ve developed a set of practices and behaviours that support us in working at our best outside usual business hours and when we’re not face to face. If you are experienced or new to remote teamwork, there may be something here for you – or maybe there is something you would like to offer us in the comments.

  1. Support asynchronous communications by default

Most of our communications occur asynchronously, and range from a handful to dozens of daily messages. Predominantly we use Trello and Slack. As we each have different availability and preferences for when we work due to client commitments, family and personal needs, having tools that support ‘fire and forget’ messaging allows us to each work when it’s personally convenient, minimising blocks in having to wait for a response. This supports us in maintaining our autonomy. 

The underlying assumption for this mode of communication is ‘I’m sending this message when it’s convenient for me, and I trust you will respond when it’s convenient for you’. Sending a message does not mean ‘you must respond now!’. This shift can take some getting used to, as most of us have a Pavlovian response to our phone vibrating with the arrival of a new message. Slacks ‘pause notifications’ feature is particularly useful to silence messages, lessening the pressure to respond immediately. Our team uses this feature regularly to ‘tune out’ and protect family time.

With synchronous communication you get immediate feedback, so you know if and how your message was received. In asynchronous communication things can easily get missed. Over time, we’ve developed a social protocol to address that things don’t (usually) get missed:

  • Messages are responded to, or acknowledged – even if it’s a quick thumbs emoji, so we all know they’ve been read, and it’s obvious if something is still waiting for a response
  • By default, we operate on the basis of ‘inform everyone of your intent or action and provide opportunity for objections, otherwise assume consent’. A thumbs up is enough to indicate consent
  • If there’s a request that requires an action or response, we make the effort to ensure the request is clear and indicate any potential time sensitivity
  • We organise messages by topic (channels in Slack, columns and labels in Trello), so they are easy to prioritise and the context is usually implicit. This also eliminates ‘noise’, or at least keeps it contained to the #random and #general channels
  • Messages tend to be be fairly short and specific
  • We post photos and diagrams to help illustrate things quickly

Sometimes something comes up that has sufficient priority, or our messages don’t land, and we’ve learnt that if we’re going back and forth then it’s usually an indicator that we need to change communication modes.

  1. Know when to move to synchronous communication

As a team we know that the most effective form of communication is face to face at a whiteboard. So we’re quick to move to face to face –  usually a video call (we use Zoom) if we find or our messages are not landing as we expected, or it’s faster to discuss in person. Zoom includes the ability to have a shared whiteboard, and share your desktop – so it’s quick and easy to illustrate what we’re thinking.

For important or complex issues I personally find my understanding improves if I hear it as well as reading it – so having a quick call to hear a first hand account can often yield deeper insights for me. These calls tend to be ad-hoc, or scheduled to support specific work we are doing or might be pairing on.

As a scrum team, we keep to the scrum events (daily scrum, sprint planning, sprint review, retrospective). Having a cadence of events allows us to regularly synchronise and catch up – so our async comms usually only covers a 24 period before we talk to each other in person. This gives us an opportunity to re-align, raise and/or resolve any issues and plan what we’re doing next. Having autonomy requires shared agreement and understanding on our goals – so that we all know we’re working on the most valuable thing. We use our scum events (sprint planning and daily scrum) to realign and confirm what work we’re going to do to progress our goals. Asynchronous communications would not work without periodic synchronization.

Our daily scrum is timeboxed to a 15 minute video call. This is usually enough, and we’re actively working to make it shorter. A natural tendency for teams would be to reduce the frequency of the daily scrum, which we don’t recommend. We’re experimenting now with holding our other events in person rather than over video calls to deepen our social bonds, and ensure we protect time to work on the business of Agility Systems.

A guide for when we move to synchronous communication:

  • When a message generates a lot of discussion, and we can see something is not clear (e.g. messages start to ping pong between us)
  • When there’s more than mild contention. We want the high-bandwidth, full experience of understanding where we’re not in agreement. Too much is missed, or mistaken when this is not face to face.
  • Regularly enough to re-align. Having a regular check in creates accountability, and opportunity to verify we’re working on the most valuable thing

We have one strong expectation of each other that is required to support both modes of communication working effectively…

  1. Be informed

Working autonomously towards shared goals means you absolutely have to keep up to date with what the rest of the team are doing. When we do meet face to face, the expectation is that everyone is aware of what’s going on. This means you’ve read any new Trello and Slack messages (both apps’ notification mechanisms make this very easy to see what’s new to you). It does not mean that you have necessarily actioned any request. 

As we try and keep our events focused and timeboxed, we don’t have time to replay everything that’s happened. It also means you’ve had time to process and think about things – so when we do meet, we get each other’s considered views, not just reactions or first impressions. Additionally, everyones prepared so anyone can facilitate the conversation. This shares the load, and avoids anyone getting ‘stuck’ in a role. 

These practices require a level of individual discipline, and the courage to hold each other accountable when we don’t. They allow us to work remotely together very effectively. Personally, I find joy and satisfaction in this approach because:

  • I have autonomy to work when, where and how best suits my family life
  • Interactions are purposeful – I’m never wondering ‘why am i here, and what are we doing?’
  • When I’m not at my best, I know my colleagues are at there best – so we support each other when needed
  • I’ve noticed that we tend not to discuss work while we’re out together socially – we actually socialise and enjoy each others company
  • We’re constantly taking small steps towards our goals. We see measurable progress, and we can react quickly
  • The pace is exciting, and balances sustainability with progress towards our goals

Right now, this is working for us. I’m sure we will evolve and experiment as we look to reduce friction every time we pause to inspect and adapt how we work (weekly, Fridays over lunch).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s