Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage Articles Hybrid Work is Here to Stay, and Software Teams Need to Adapt

Hybrid Work is Here to Stay, and Software Teams Need to Adapt

Lire ce contenu en français

Key Takeaways

  • Gather the distributed team on one platform to empower asynchronous work
  • Establish a single source of truth where current and future projects live, that all team members can access, reference and share.
  • Document decisions in a clear way so remote and in-person team members can have the same amount of insight into the decision making progress and get behind the decision.
  • Establish a facilitator for each ritual, and allow team members to take turns, so that even the most junior on the team get a chance to lead.
  • To empower distributed development teams in a hybrid workplace, leverage automated tools to make agile effortless.

One of the twelve principles laid out in the Agile Manifesto is that “the most efficient and effective method of conveying information to and within a development team is face-to-face conversation.” But what do you do when that is rendered impossible?  

The COVID-19 pandemic forced development teams - and all non-essential employees - into remote work. Meetings moved to Zoom, separate “water-cooler” channels were created in Slack to maintain camaraderie, and home offices gained some top-shelf equipment. 

Development teams were already some of the most distributed, so the shift to remote work was not completely new. However, as vaccines become more accessible and the possibility of returning to an office becomes a reality, a new type of hybrid workplace is emerging. 

The pressure is now on software teams to facilitate collaboration in this new hybrid world. When half of your team is co-located and the others are distributed, how do you create an environment that nurtures team spirit and inspires devs’ best work? 

It’s become clear to us at ZenHub that the way we approach software development needs to adapt to this new hybrid way of working. Along with changes in process, project management tools will need to evolve to empower an equality of experience for hybrid teams.  

Below we look at five ways that tools and processes can be adapted to support a hybrid team and foster collaboration no matter where the team is located. 

Asynchronous over in-person

From the way we run agile rituals to the way that we make decisions, software development teams must adopt an asynchronous-first approach to collaboration. In a hybrid work environment, it may not be practical (or even possible) to bring the entire team together at a point in time to estimate work, refine issues, or plan sprints. 

Coordinating between already busy calendars and multiple time zones is a headache at best, and a colossal waste of time at worst. We already know developers want fewer meetings and want to contribute at their own pace when it’s least intrusive to their work. So let’s prioritize solutions that facilitate asynchronous - not just remote - communication. 

This means tools that roll-out effortlessly in a familiar environment and connect developers easily and quickly with their team. Team leads will need to facilitate events - estimation, sprint planning, backlog refinement - in an asynchronous manner, so remote team members can contribute, feel heard and seen, and receive feedback from their teammates. Basically, look for tools that gather the distributed team on one platform and make the transition seamless.

When “in-person” events and meetings are required, it’s important for the team to think about facilitating those meetings in a way that creates an equal experience for everyone involved. At ZenHub, one of the ways that we’ve embraced this is through a “single face, single screen” policy. What does this mean? Even team members joining from the same physical meeting room are encouraged to each join from their own laptop rather than a shared camera. 

Thus far, the results have been extremely positive, and we’ve heard from multiple employees that they feel even more connected to their teams than when we were co-located. 

Establish a single source of truth

One of the biggest issues facing development teams is executive buy-in and, frankly, a lack of understanding of the development process on the part of the executives. 

Many organizations already relate to the challenge of having project data spread across multiple places, with the development team tracking day-to-day work in one tool and executives and other stakeholders tracking goals and team KPIs in an entirely different set of tools. As a result, misalignment between development teams and stakeholders is all too common. In a hybrid workplace where communication can be more difficult and teams don’t have the luxury of being co-located, this problem can be exacerbated even further. 

To avoid this pitfall, teams need to establish one central place where past, current and future projects live, that all team members can access, reference and share. By leveraging a single source of truth that works for developers, designers, product managers, and executives,  companies can actually turn this risk into an opportunity to bring added visibility and transparency to the development process and create stronger alignment. 

At ZenHub, our team leverages GitHub Issues as our single source of truth. While centralizing our process around GitHub did introduce a learning curve for non-developers on our team, it’s given us the ability to tie progress directly to changes in our code base, eliminating human error and tedious updates for our developers. As a result, our developers are more productive and we have a more accurate understanding of progress to update our key stakeholders. 

Additionally, we’ve leaned into the idea of creating a company wide roadmap that captures the key projects and milestones for each functional area of our company. While it might not be traditional to track marketing projects side by side with software projects, we’ve found that this approach gives the entire company the ability to see and understand what our development teams are working on and reduces one-off check-ins and progress updates. 

Document decisions in a clear way

Documenting decisions as they are discussed and made creates an opportunity for remote members to dial into an element of the process that would not have otherwise been available to them. It makes it harder for team members to miss when a decision has been made, and therefore minimizes mistakes later in the development process.

If a team member wakes up in her time zone and and finds - on the team’s project management platform - that a decision has been made, two things need to happen:

  1. The team member needs to quickly and easily find the reasoning for why this decision was made. Maybe they agree with it. Maybe they don’t. The “why” is important regardless, as it informs the team member on the team’s reasoning.
  2. The team member needs to be able to quickly identify next steps and where he/she can be most helpful. By documenting decisions, the team lead empowers future action and keeps the project moving forward.

One of the added benefits we’ve found from documenting our decisions throughout the course of our development process is being able to refer to them later on in the project's lifecycle. If questions arise later in the development or QA process, we can clearly communicate why we made certain decisions and justify the direction that we’ve taken. Again, this helps to create more alignment across the team and with stakeholders across our organization.

Establish a facilitator for each ritual

To maintain a healthy development environment, it will become very important for each agile event to have an assigned owner and a pre-meeting agenda. This will organize the team and ensure that everyone participating (regardless of where they’re participating from), is aligned on the goal and can review issues and tickets ahead of time to streamline the meeting.  

The role of the facilitator will be to establish clear roles and expectations for each ritual and to hold the team accountable. Prior to the meeting, it will be the job of this facilitator to establish the agenda and gather contributions from the team in an async way. This best practice transcends development teams, but that’s why it’s important - it’s a best practice that will need to be implemented in order to streamline hybrid teams.

At ZenHub, one of the ways we put this process into practice is by appointing a new team member (round-robin style) to facilitate each ritual. This not only helps keep our meetings feeling fresh, it also offers an opportunity for members of the team to gain experience in a domain that they might not otherwise have direct exposure to in their role. 

Leverage automation to make agile effortless

Finally, to empower distributed development teams in a hybrid workplace, it’s important to lean on the tools that are available to facilitate agile events. Automation is the secret sauce that does the heavy lifting of certain agile processes and takes the guesswork out of project management. Automated tools save developer time, ensure board hygiene and facilitate events in a way that ensures teams are following best practices. 

At the end of the day, the most important thing we can do is prioritize empathy over everything. We are all human and we must show grace to each other and ourselves. When teams are distributed, the most important factor is empathy - the ability to put yourself into the proverbial shoes of another, and while tools exist to help facilitate better processes, there are no tools to increase empathy. That requires extra awareness and effort on the part of each individual.

About the Author

Aaron Upright co-founded ZenHub in 2015 to help forward thinking software teams manage their projects closer to the code. Aaron currently serves as the Head of Strategic Accounts where he works closely with customers to help shape the product experience.

Rate this Article