Once there was a potter who lived with his wife in a village. At the break of dawn each day the potter would head towards the clay pit outside the village. He would chat briefly with his friend who worked the clay pits, collect his day's supply of clay and head towards the well where his wife would have drawn water.
With the clay balanced in one hand and the pot of water in another, they would head back home. The potter would lay aside some clay as a contingency, then settle down to work. As the potter made the pots, his wife would lay them out to dry. Next morning, she would carry them to the kiln outside the village for baking. This kiln was operated by the potter's brother.
At the end of a week, the potter, his wife and his brother would head to the weekly market in the village to sell all the pots made during the week.
There are four team members in this story, and then the end customer. All four team members work seamlessly in 1 week Sprints, yet most are not co-located.
In this current shift towards #remoteworking accelerated by the #covid19 #pandemic2020 how do Agile teams, which are built on a largely co-located model, function effectively?
As the world grapples with a global pandemic, we at Srijan, realized that our normal processes, though quite effective in ‘normal conditions’, needed to be tailored in a way that our employees can work remotely in an agile distributed manner; however, without compromising on productivity and their well-being.
In fact, per this report, there has been a 159% growth in remote working since 2005 in the US alone. Thanks to virtual workplace tools that facilitate the collaboration and communication of remote-based teams hassle-free.
Additionally, the exclusive adoption rate of the Agile methodology in software development has helped teams stay connected and conduct ceremonies via standups, sprint grooming, sprint planning, and retrospectives.
This blog will focus on five factors essential for managing distributed teams and gaining positive outcomes.
Here are five things that have worked for teams -
The most well-known and oft-repeated one - there needs to be constant communication between team members. Tools like Slack, Hangouts, Zoom are perfect to keep an open communication channel.
However, we will try and break this down further. Communication is influenced by many factors, and each of these impact how effective the communication between team members is.
- Synchronous vs asynchronous - Synchronous communication is when all team members need to participate. Responses are expected to be near-real time, and the communication is more conversational. Zoom meetings, Skype calls, MS Teams Meetings are best when you need synchronous communication channels. Asynchronous communication, on the other hand, does not expect an immediate response. This method gives other members time to respond to messages during a time dedicated to communication. Asynchronous communication channels like emails, Hangout messages and Slack work best for this. As a team lead or manager, you need to work out a balance between both forms. When all team members are distributed, asynchronous communication works better. To balance it, assign dedicated time in the day when the whole team comes together on a common call for open discussions.
- Agenda - Make sure meeting invites always have a detailed agenda, so everyone comes prepared and no time is lost in explaining the purpose of the meeting. Share artifacts along with the invite - meeting decks for demo's, product backlogs, links for planning and retrospective boards. Tools like Retrium, ScrumPoker Online and Friday app help plan ceremonies in advance, as well as manage information during iterations.
- Different time zones - Distributed teams also mean different time zones. This not only means more asynchronous communication but also different communication paradigms. Using collaborative work processes and work tools that allow simultaneous interactions help reduce chaos. Additionally, work out "interactivity time slots" which suit everyone. Tools like Spacetime sync easily with your Google and Outlook calendars, making scheduling between time zones easier.
Psychological and Mental Health
Working from home takes a definite toll on the employee's mental health since one keeps juggling multiple tasks in between, with people interaction being limited to either family members or none at all. For many people, the office is also the place where they de-stress.
So it becomes imperative for employees to be able to maintain sanity to not impact their efficiency, and managers and organizations as a whole can play a key role in ensuring that.
- Self-imposed "Away times" - Scheduling calendar off-times and away times allow people to take scheduled breaks while keeping the team members aware that they are not around. Drive your teams to mutually agree on "Away times" and not schedule team discussions at that time.
- Focus times - Equally important is to schedule focus times - hours when everyone can work uninterrupted. As a thumb rule, no meetings can be scheduled during this time, and communication - both synchronous and asynchronous - should be kept to a minimum.
- Virtual coffee/lunch rooms - All work and no play makes teams dull. Don't let your team miss out on those gossip conversations around the lunch table or coffee machine, schedule virtual coffee breaks and lunches. These would be interactions where everyone should be preferably on video. One very effective practice adopted by Srijan Technologies is a start-of-the-day 15 minutes guided meditation. It's open to the whole organization and is followed by 10-15 minutes of open conversation. While meditation may not be everyone's cup of tea, this session helps bring a lot of tranquility and allows everyone to get in the groove for the rest of the day.
Between 20-30% of people who work remotely cite increased productivity and better focus as its #1 benefit. While working alone it is easy to forget to lose track of time and work late hours. On the other hand, it is easy to fall prey to that one episode on Netflix that turns into a binge.
- Self-monitoring - Self-monitoring becomes the key, and having a tool like RescueTime installed on your system may help keep you on track. These tools allow you to set daily goals and track the time spent on various activities, including offline ones like lunch and in-between-work stretches.
- Peer-monitoring - Since it may not always be possible to hire only highly self-motivated people, peer monitoring in Agile teams may be an effective way to ensure participation, especially when noticing a lack of communication or no movement of tickets on your Scrum board. As a Scrum Master or manager, schedule multiple stand-up meetings. "Coffee with work sync-ups" is another great way to keep engagement high and at the same time subtly monitor your peers.
Technology enablers are the backbone of any distributed team and not just an Agile team. In a fast-paced Sprint model, however, the need for having these enablers and their backups in place just increases manifold. A few of these are -
- Data and information protection - One essential aspect of distributed workplaces is the protection of data and information. This includes secure tools for file-sharing, password-sharing, code-sharing, and data-sharing. Tools like LastPass for secure password sharing and SFTP servers for Managed File Transfers can be enabled at an organization level.
- Collaborative development - Distributed development teams also means multiple people working on a shared codebase at the same time, from different locations. Using version control tools like Subversion in place ensure that there are no code conflicts. Multiple setups like using Github and Bitbucket help collaborative development, code reviews, and technical reviews.
- Internet & power - Remote working also means an uninterrupted supply of power and the internet. And while not necessarily a technology enabler directly, organizations have to help their employees procure a seamless internet connection with good speed and bandwidth, to be able to run all those video calls!
One of the key elements that keep an organization going is its internal processes. And for a distributed workplace model to work, teams and organizations as a whole need to be ready to tweak these processes for what works for them.
- Meeting cadence - As a manager of an Agile team, finding the right balance between going by the rulebook and adapting them to meet the need of a distributed team might be tricky. Changing meeting cadence to move to twice-a-day daily standup meetings, which can double up as handover meetings for people in a different timezone, splitting grooming and planning sessions to maintain better focus, and having a daily log of tickets moved are some of the things that work.
- Development processes - Distributed development when not handled correctly leads to rework and loss of team capacity. Measures like having requirements documented, CI/CD in place, and testing automation helps mitigate this risk. Use retrospectives to track the result of these process changes and make improvements.
The practice of remote work is being embraced readily since the past decade - a trend that is now only going to intensify in upcoming times.
As organizations go global, distributed teams are the key to become successful. With additional efforts and some alterations, Agile or de-Agile, it can work well with distributed teams. It might even prove more successful than your current software development strategy.
Besides, it can also have a beneficial impact on other teams like marketing, HR, and sales. In fact, more than 50% of marketing teams and 60% of the sales team work remotely.
Streamlining a distributed workplace may be an uphill task initially, but eventually pays out in the long run!