With the dramatic shift for entire companies and industries to work remotely, we have identified some common challenges or pitfalls that may occur in product deployment. It’s important to realize the current situation is very different from team members working remotely occasionally or even part of a team working remotely. The undefined timeline of entirely remote workplace environments means we need to consider each aspect of the development strategy from a new angle: from ideation, to agile work streams, to product deployment.
This article highlights some of the learnings we have found to be helpful at Valence and around the industry. Every product deployment situation is unique, so we recommend considering your team’s dynamics and working style.
Common Challenges Observed:
- Communication and rapport can suffer when the entire office and our clients’ office is working remotely
- Individual contributors may feel isolated
- A lack of common working hours may lead to slower iteration cycles
- Workload Balancing across team members may be more difficult to measure
- Team members struggle to learn from each other as there is less opportunity to unofficially help each other
- Culture can get fragmented and is likely to change as there is no common physical space
- Best practices may begin to suffer or fragment as tribal knowledge becomes more siloed
Unfortunately, a whole slew of challenges emerges during entire-team remote work, but in this article, we will focus on challenges directly relating to product deployment and progress.
At Valence, we believe that Distributed Development and Remote Collaboration require a proactive approach to keep teams and organizations aligned.
Suggestions & Best Practices: Product Deployment and Progress
Communication and Rapport
Communication is more complicated when we are all physically scattered, and it is much easier to get out of “sync”. Non-verbal communication may be lacking, and communication tone may be misinterpreted. Gaining consensus and iteration cycles may take longer. Since face to face meetings may not be easily accessible, we recommend the following:
The Valence Approach:
- Use tools that broadcast status: Tools like Slack or MS Teams can update your status based on your calendar. This is analogous to how people make quick decisions to initiate impromptu conversations while you are sitting next to them in a cubicle. Add a profile picture in applications like Slack and Teams especially for times when your video is not live during remote meetings.
- Link multiple communication platforms together: In today’s world, most of us have a handful of email addresses and different inboxes, multiple Slack workspaces and channels, an MS Teams account and a variety of back-up drives. Having a multitude of tools for someone to reach you, typically results in a communication failure. A simple way to streamline is to connect various services in Slack or Teams. Identify a single place where these communications reach you. The biggest return on an IT investment will come from connecting communications to the tool used most.
At Valence, we use a collection of tools. We typically align our tool choices to those of the clients needs, and we have found the following tools useful in our daily communications and digital work.
– Slack, MS Teams, Office365, PowerBI, Jira, Confluence, GitHub, Microsoft DevOps, Microsoft Power Automatic, Google Suite, Zoom, WebEx
Empower team members to share communication preferences:
- Are after hours messages OK?
- Prefer Slack, Teams or email?
- Common times for communicating?
- Turn-around time for messages?
Use different tools for different types of conversations:
Use Video on Conference Calls: It can be helpful to begin a conference call with camera video on to maintain rapport amongst teammates (or with clients!). Video helps in establishing comfort, as well as provides body language cues from employee to manager. Managers can lead the way to establishing this as a common practice by ensuring their video is active.
Slower Iteration Cycles
Teams may struggle to get feedback in a timely manner which in turn may slow development or degrade delivery quality. Preliminary research shows that coding teams are struggling in cycle times (according to LinearB, cycle times are up 45% — a significant increase). Slower email replies or a lagging internet connection may get in the way— but we have some suggestions to support iteration cycles and keep them as agile as possible.
The Valence Approach:
- PMs should create and leverage “Feedback Needed” Slack or Teams channel for quick feedback conversations
- Shared Slack channels with the client can help tremendously with soliciting client feedback and speed up iteration time; these can be official or unofficial and will still be beneficial!
- A blend of asynchronous stand-ups by posting on a Slack channel and synchronous stand-ups over video call can keep communication flowing while needing to wait for another person to be available.
- Remember to avoid a “dump truck” methodology, where the majority of changes occur at the end of the milestone or sprint. This results in heavy lifting to get feedback. Provide transparency and iterate along the way, using these tips, and it will be much easier and efficient for your deployment.
Balancing Workload / Productivity
A sudden shift in operational paradigms is likely to put an additional effort on some individuals more than others. Typically, the individuals that find themselves working harder are the ones that facilitate communications and manage the leadership of the teams. This is because communication is less impromptu and more intentional.
The Valence Approach: Plan, Plan, Plan for Meetings and Prepare your Audience:
- The goal for most meetings should be to make decisions.
- Proposals, agendas and topics should be made ahead of time in a document form; all decision makers should review it ahead of time such that the meeting time is spent wisely.
- Leverage meeting time to discuss specific material on which a decision needs to be made, or any clarifications required to make a decision. As a benefit of this step, your meeting times will be significantly reduced and will provide your team with more flexibility.
Individual Isolation
Research from LinearB shows us that “92% of dev teams are writing more code since working-from-home” since theoretically employees can slot out uninterrupted blocks of time to focus on their work. However, this does not devalue the loss of team-connection that simultaneously increases. Without a physical space to travel to, employees may feel isolation and a lack of connection to the team(s). In an office space, there’s opportunity to move around, swing by a colleague’s desk, or catch up over a cup of coffee. In a remote working environment, it is tough to replicate that experience and feeling of community. We have a few recommendations that have worked well for our teams:
Common Best Practices and Tips:
- It can be okay for employees and teammates to take certain types of calls while on a walk. For example, 1 on 1 calls don’t always need to be at the computer and notes can be jotted down on a phone too.
- Managers can create an “open mic” call where any team members can jump in and just leave their mic on throughout the day. This effectively simulates an open workspace, to allow that “swinging by” feeling.
- Create a common shared music streaming channel or playlists.
- Share personal moments and experiences at the beginning of calls to create a sense of connection.
At Kopius, we’ve piloted:
- Monthly happy hours and coffee hours
- Meet new teammate lunches, led by management and attended by the CEO
- All hands meetings, complete with dinner delivery coupons (think GrubHub) for employees to grab a meal on the company
- Virtual onboarding with a delivery person to provide hardware delivery of essential office items