Issues with Remote Agile Software Development

Introduction

The Agile methodology is a software development approach that prioritizes flexibility, collaboration, and iterative delivery. It involves breaking down the development process into smaller segments called sprints that typically last 1-4 weeks. The focus is on teamwork, communication, and daily stand-up meetings to keep everyone informed. Agile emphasizes individuals and interactions over processes and tools, making it a popular approach in modern software development (Agile Manifesto, 2001). However, the sudden shift to remote work has impacted the personal nature of this model.

During the COVID-19 pandemic, companies like Google, Tesla, Microsoft, and Twitter implemented remote work policies to protect their employees. As the pandemic subsides, these companies are asking their employees to return partially to in-person work, which has sparked a debate about the advantages and disadvantages of remote versus in-person work arrangements. To investigate the impact of remote work policies on team culture and productivity, several studies have examined various aspects of agile development, including onboarding, client and team dynamics, and work-life balance. Some studies suggest that remote software development can be just as effective as in-person development, while others have found that it can lead to decreased productivity and challenges in communication and collaboration.

In this article, we will discuss these findings in the context of the ISTE standard for students 1.7c: “students contribute constructively to project teams, assuming various roles and responsibilities to work effectively toward a common goal.”

Remote Team Dynamics and Development

Mob (or pair) programming is a collaborative approach to agile software development where a group of developers work together on the same task. One person acts as the driver and writes code on the computer, while the rest of the team acts as navigators and provides input, gives suggestions, and thinks strategically about the future. This approach has many benefits, including improved code quality, increased knowledge sharing, and faster problem-solving. It is considered fundamental to the success of many teams, as it aids in solving complex problems by working together. However, Nolan (2021) found that during the pandemic, there was a significant decrease in pair programming and mob programming activities, which significantly impacted companies with a mob programming culture. Without this collaboration, productivity may remain constant, but it could lead to bug fixes or a more complex redesign of features in a later development stage. This is because mob programming allows a development team to consider the big picture while developing a feature, enabling them to see the forest from the trees.

Scrum is another crucial process in agile software development. It involves short daily meetings held by a team to stay synchronized and on track. While many studies have argued that these meetings have little impact on productivity and meeting deadlines (Miller, 2021; Butler, 2021), other studies have found that distractions during virtual scrum meetings can be problematic. For example, Butt (2021) found that team collaboration decreases as there are fewer discussions about user stories or project complexities, and team members may become distracted by emails during these meetings. This can limit the effectiveness of the agile approach. Additionally, attendance at scrum meetings is decreasing, which can be a significant problem as these meetings are crucial for the team’s synchronicity, development progress, and the long-term success of a project, regardless of progress in other areas.

Team meetings are a valuable learning opportunity, particularly for junior development team members. During these meetings, developers can work together, receive feedback from colleagues, share knowledge and experience, and develop confidence in their abilities (giving them a “seat at the table”). While some aspects of this learning experience can be replicated online, Schwartz et al. (2022) demonstrated that remote meetings result in different cognitive processes than in-person meetings. Specifically, certain brain-behaviour associations arise only during live idea exchanges, indicating that specific neurobiological processes underlie human co-presence and are more beneficial for learning than remote meetings.

A goal of the agile development process is client satisfaction. However, according to a survey by Butt (2021), developers reported a decrease in remote collaboration with customers due to issues such as scheduling conflicts, slow internet speeds, and availability to discuss the project. As a result, most of the feedback from the client was received via email or on story cards. Furthermore, 76% of clients reported dissatisfaction with remote meetings with developers due to delayed project delivery times, increased costs, output not meeting their needs, fewer meetings with developers, and overall lower satisfaction with the work.

Hiring and Onboarding

During the pandemic, tech companies experienced a surge in hiring to meet the demand for developers with work-from-home abilities. To ensure a high-quality candidate experience, the virtual hiring process had to be reworked. To aid in the selection process, companies increased the number of staff involved and added more interviews. The technical interview process, which often involves whiteboarding and other in-person techniques, also had to change to a remote and less desirable setting. Candidates found it challenging to envision the company culture during online interviews, while interviewers struggled to assess non-verbal communication, like body language. Furthermore, candidates with better internet connections tended to be implicitly favoured, as highlighted by Fiechter et al. (2018).

The pandemic has affected how software development teams introduce new hires to their company. Rodeghero et al. (2021) conducted a study on 267 new hires at Microsoft. They found that most were onboarded remotely and never had the chance to meet their colleagues in person, as most meetings were conducted with cameras off. This created a challenge for new hires in building strong social connections with their team and feeling comfortable approaching anyone for help. Additionally, since new developers come from different backgrounds and have different levels of experience, a standard approach to onboarding was found to be ineffective. The researchers suggest that onboarding processes should prioritize team communication, encourage camera use during meetings, assign an onboarding buddy and mentor, support different onboarding speeds, and provide up-to-date documentation on company workflows.

Finally, Team managers can face several challenges when working on new projects with new teams. One such challenge is facilitating effective collaboration and problem-solving among team members. This is particularly true for challenging projects that require creative and innovative solutions. While many remote tools are available for brainstorming and problem-solving, research by Nolan et al. (2021) suggests that initiating new ideas without in-person interaction can be more challenging and may benefit from co-located interaction. When team members are physically located in the same space, it is easier to share ideas, build rapport, and collaborate effectively. They can have unplanned discussions and engage in informal brainstorming sessions.

Work/Life Balance

In a survey conducted by Miller (2021), which included over 2000 software developers, it was found that many developers experienced an increase in scheduled meetings, group member notifications, and ad-hoc meetings, while also experiencing a decrease in the quality of meetings and their ability to collaborate with team members. Despite efforts by numerous teams to use social engagements to support their members, 74% of respondents still reported feeling a lack of social interaction in a work-from-home environment.

According to another study by Bulter et al. (2021) conducted at Microsoft, the impact of remote work varied based on individual roles, characteristics, and sociological factors. Individuals who are visually impaired or communicate through body language face unique challenges with remote communication since it relies heavily on visual cues. Additionally, neurodivergent professionals may prefer to keep their videos off during meetings as specific activities that help them remain stimulated or calm down may be misconstrued or cause distractions for other attendees. The study also found that remote work provided flexibility during the pandemic but blurred the boundary between work and personal life in problematic ways. Non-work distractions increased, while work-related distractions decreased, leading to a sense of social and collaborative isolation for most workers in their study.

Conclusion

Remote agile software development requires different skills and tools than in-person development. Teams must rely on virtual communication tools like video conferencing, instant messaging, and collaborative software platforms to stay connected and productive. This presents several challenges that must be addressed to maintain productivity, quality, and customer satisfaction. Developers and team managers must navigate obstacles such as remote collaboration difficulties, new team onboarding, and the need for social connection and support. Additionally, the impact of remote work on individual workers varies, with factors such as role, characteristics, and sociological factors playing a significant role. Overcoming these challenges requires a multi-faceted approach, including promoting team communication, encouraging social interaction, providing mentorship and support, and adapting the onboarding process to meet individual needs. By addressing these issues, remote agile software development teams can continue to thrive in the face of the ever-evolving challenges of the modern software development environment.

References

Nolan, A., White, R., Soomro, M., Dopamu, B. C., Yilmaz, M., Solan, D., & Clarke, P. (2021). To Work from Home (WFH) or Not to Work from Home? Lessons Learned by Software Engineers During the COVID-19 Pandemic. Communications in Computer and Information Science, 14–33. https://doi.org/10.1007/978-3-030-85521-5_2

Schwartz, L., Levy, J., Endevelt-Shapira, Y., Djalovski, A., Hayut, O., Dumas, G., & Feldman, R. (2022). Technologically-assisted communication attenuates inter-brain synchrony. NeuroImage264, 119677. https://doi.org/10.1016/j.neuroimage.2022.119677

Fiechter, J. L., Fealing, C., Gerrard, R., & Kornell, N. (2018). Audiovisual quality impacts assessments of job candidates in video interviews: Evidence for an AV quality bias. Cognitive Research: Principles and Implications3(1). https://doi.org/10.1186/s41235-018-0139-y

Butt, S. A., Misra, S., Anjum, M. W., & Hassan, S. A. (2021). Agile Project Development Issues During COVID-19. Lecture Notes in Business Information Processing, 59–70. https://doi.org/10.1007/978-3-030-67084-9_4

Agile Manifesto. (2001). Manifesto for Agile Software Development. Agilemanifesto.org. https://agilemanifesto.org/

Miller, C., Rodeghero, P., Storey, M.-A., Ford, D., & Zimmermann, T. (2021). “How Was Your Weekend?” Software Development Teams Working From Home During COVID-19. 2021 IEEE/ACM 43rd International Conference on Software Engineering (ICSE). https://doi.org/10.1109/icse43902.2021.00064

Butler, J., Czerwinski, M., Iqbal, S., Jaffe, S., Nowak, K., Peloquin, E., & Yang, L. (2021). Personal Productivity and Well-being — Chapter 2 of the 2021 New Future of Work Report. ArXiv:2103.02524 [Cs]. https://arxiv.org/abs/2103.02524

Rodeghero, P., Zimmermann, T., Houck, B., & Ford, D. (2021). Please Turn Your Cameras On: Remote Onboarding of Software Developers during a Pandemic. IEEE Xplore. https://doi.org/10.1109/ICSE-SEIP52600.2021.00013

Leave a Reply

Your email address will not be published. Required fields are marked *