Team Creativity in a Hybrid Software Development World: Eight Approaches

Software development is inherently a creative endeavor. With hybrid software development here to stay, this article documents eight approaches we have found that hybrid software teams use to preserve, structure, and promote creativity as part of their day-to-day work.

A SOFTWARE ORGANIZATION'S workforce plays a critical role in its ability to innovate. By recruiting individuals who are predisposed to be creative, 1 whether naturally so or by having undergone training, an organization can set itself up for competitive success in generating and seeing through new ideas. At the same time, just hiring creative individuals is insufficient. For organizations to continue to innovate, creativity must be baked into its operations; that is, software teams must be explicitly empowered and supported to come up with novel features, contemplate a viable architecture, or overcome a gnarly programming problem. Traditionally, colocated meetings served as the conduit for such activities: in-person interviews at clients' workplaces, design sessions at the whiteboard, or impromptu gatherings at a developer's desk to peer collectively at some code.
While some organizations have always worked remotely, the COVID-19 pandemic necessitated a shift to fully remote work across the industry, with each individual developer contributing from their own location. Such remote work impedes creativity since employees become less interconnected and more siloed, 2 videoconferencing can inhibit the production of creative ideas, 3 and a tendency exists to favor proof-of-concept code over ideation. 4 The current trend to return to hybrid work is partly motivated by organizations recognizing that innovation may be at stake. Different organizations use varying policies concerning hybrid work. For some policies, the aim is for all team members to colocate during certain days in the office while spending other days at home as desired. With others, the intention is for a core subset of the team to work in the office every day, whereas the remainder of the team can work full-time from home. In theory, such arrangements reenable colocated creative work. In practice, it happens regularly that some of the participants needed in a creative endeavor are still remote. When the dynamics of the resulting meetings wittingly or unwittingly favor those in the office and disenfranchise those who are remote, creativity is further hampered. 5 This article shares what we have learned about the work practices hybrid software organizations have adopted to promote creativity within and among their teams. We specifically introduce eight modes of working that we have seen emerge and discuss their relative strengths and weaknesses.

About This Study
Between November 2021 and April 2022, we conducted an interview study with 26 industry practitioners about their experiences collaborating with colleagues remotely. We interviewed people in different roles (e.g., software engineers, architects, and project managers), in different industries (including technology, games, and finance), in different types of companies (e.g., start-ups and large multinationals), and with different years of experience (from one year through 20+ years). The majority of the participants were based in the United States (20), but we also spoke to practitioners in the United Kingdom (4), Canada (1), and Argentina (1). All the interviews were conducted over Zoom (https://www.zoom.us), and each interview was between 30 and 60 min long. Each interview was recorded and subsequently transcribed. Two of the authors analyzed the transcripts to identify different approaches used by teams to encourage creativity in their day-to-day work. Alongside each approach, a number of challenges were identified as well as ways in which teams alleviated these challenges. We subsequently triangulated the approaches with previous research into distributed meetings by the authors, existing literature, and the authors' own extensive industry experience, enabling us to identify eight distinct approaches that hybrid software teams employ to explicitly promote creativity when so needed.

Considerations
To aid in selecting a potential approach to foster creative thinking, we have identified a number of contextual factors to consider. These factors arose in our interviews when discussing different approaches: incorporating the voices of all participants, whereas others require whoever leads the activity to be mindful to ensure that all voices are heard and that the right people are included at the right time. Table 1 shows each approach rated against these different considerations along with example scenarios best suited to the approach as well as a summary of the approach's strengths and weaknesses. Note how some approaches are the remote equivalent of colocated sessions (e.g., brainstorming) and that others are more specific to hybrid work by adopting a remotefirst mindset that is inclusive of team members across diverse time zones (e.g., a single author and review).

Remote Brainstorming
With brainstorming at the whiteboard being a long-term favorite, it is no surprise that companies try brainstorming remotely. Many tools enable this, including virtual whiteboards with templates [e.g., Miro (https:// miro.com)], mind mapping tools [e.g., bubbl.us (https://bubbl.us)], and remote sticky notes [e.g., Ideaflip (https://ideaflip.com)]. Remote brainstorming can work well in generating many ideas, given the right attitude (contribute and do not criticize) and the right instructions to focus the effort on the desired outcome. As with in-person brainstorming, remote brainstorming is better suited for breadth rather than depth, due to the ease with which ideas can be generated and participants can quickly build upon one another's suggestions. Depth generally needs to be considered later when narrowing in on a specific idea.
It can be challenging to ensure that remote brainstorming is effective. The more stars an approach has, the more suitable it is.

FOCUS: THE FUTURE OF SOFTWARE DEVELOPMENT IN A HYBRID WORLD
Research has highlighted that remote teams focus less on problem space exploration in comparison to colocated teams 6 and that videoconferencing inhibits creative idea generation, due to the narrower cognitive focus that arises when people focus on a screen. 3 Additionally, our interview participants described issues caused by poor Internet connectivity, the unfamiliarity of meeting participants with virtual whiteboards, and a lack of visual cues, causing delays and stilted conversations. Despite these issues, remote brainstorming can be effective through purposeful meeting design. Commonly cited steps from our participants to help facilitate an effective brainstorming session were regular breaks to avoid "Zoom fatigue," instituting explicit turn taking rather than a free-for-all in which anyone can contribute at any time, deliberately separating decision making from idea generation (leading to a shorter targeted session on ideas, with a separate round of decision making later), and preprepared whiteboard templates to guide the participants toward the objectives of the brainstorming session. An important choice is whether to brainstorm synchronously or asynchronously. In terms of getting results, the former is faster. In terms of the quality and diversity of ideas, the latter is considered better, particularly when participants generate on their own first without seeing and being influenced by the ideas of others. Moreover, some people are more comfortable generating ideas on their own time rather than on the spot in meetings. Because individuals must be given time to generate ideas on their own, and on their own schedule, asynchronous brainstorming becomes a three-step process with clear instructions shared beforehand, individual work, and a concluding synchronous session to bring people together to build on the combined set of ideas.

Single-Author Document With Extensive Team Commenting/Reviewing
Recognizing that brainstorming remotely can be difficult and feel like it lacks an obvious purpose, some teams and organizations have gone an almost opposite route: an individual prepares a document with their "best effort" for some task, be it a design for a new user interface component, a refactoring of some existing code, or a rethinking of how to test some aspect of the product, among others. The individual may do so on their own or choose to talk with colleagues as a lead-up, but ultimately, they are responsible for producing a detailed proposal, which is then shared with the team for an extensive review (akin to a request-for-comment commonly used by open source teams). Feedback is collected either in a synchronous meeting or asynchronously by team members commenting directly in the document. The latter is particularly suited to teams working in many different time zones. Often, a team will iterate: the author continues to revise the document based on additional rounds of feedback until eventual consensus emerges.
For this approach to be successful asynchronously, our interview participants mentioned the importance of a team culture that is supportive in giving timely and well thought through review comments in the document. Such a culture can be difficult to achieve when the team is used to and comfortable with traditional synchronous meetings. Moreover, when the team is under significant pressure to produce, making time for feedback can slip in priority, causing delays and subpar feedback.
The modern generation of tools has greatly facilitated this approach. Google Docs was often mentioned as the preferred tool for authoring and commenting, though specialized modeling tools, such as Lucidchart (https:// www.lucidchart.com), and wikis, such as Confluence (https://www.atlassian. com/software/confluence), were also mentioned since they now support both synchronous and asynchronous remote participation, as well.

Designing Alternatives With Tradeoff Analysis
As a middle ground to the first two strategies, sometimes teams dedicate time to create two or more alternatives in detail, for instance when a certain architectural decision is crucial and when a user interface is being significantly redesigned. This could be performed as subteams working out competing solutions and a small number of team members collaborating in articulating multiple alternatives in depth. The alternatives are often developed in some diagrammatic With brainstorming at the whiteboard being a long-term favorite, it is no surprise that companies try brainstorming remotely.
notation and as a visual presentation, though we have seen them being proposed through working prototypes demoed over screen sharing software.
In pursuing breadth and depth, the approach is expensive in terms of time and effort, but it is justified for critical functionality and highly impactful decisions to ensure that the full ramifications of different choices are understood. Particular attention should be paid to the criteria to be met so that each alternative can be judged against the criteria to determine the one that best fits and should be taken forward into implementation. These criteria usually are decided up front and shared before the alternatives are designed. The comparison is often done in a synchronous meeting, but we have also seen experts at different locations grading each alternative through a Google Form (https:// forms.google.com) and on Survey-Monkey (https://surveymonkey.com).
From a hybrid perspective, this approach is perhaps the least suited because of the intense nature of the work: those collaborating should be able to frequently get together for what can be extended meetings, whether in person or virtual. Using different subteams, ideally chosen by the same or a similar time zone, to each develop an alternative option in isolation of the others is a possible way of enabling this.

Spontaneous Screen Share and Discussion
The previous strategies are more organized and structured, suited for larger problems and challenges. However, impromptu creativity is also important. It is not unusual for individuals to be blocked in some way in a task and need an ad hoc conversation with one or more colleagues to progress. In the office, this would be a tap on a shoulder and clustering around a screen to discuss and resolve the blocker. Remotely, the same result can often be achieved with a few minutes of screen sharing some code or other artifact with others and having a supporting discussion.
The use of messaging software [e.g., Slack (https://slack.com), Discord (https://discord.com), and Microsoft Teams (https://www.microsoft. com/en-us/microsoft-teams/group-chat -software)] makes it trivial to quickly check whether someone might be available for an impromptu conversation and allow the initiation of a call with the press of a button. To hybrid teams, this ability to have what are typically near-instant short interactions represents an essential means to resolve small issues and keep work going. At the same time, too many interruptions to regular work can be detrimental. In our research, we noted some hybrid teams that set aside a dedicated period of time each day to quickly get together and discuss the issues of the day, with the goal of resolving them through the input of the diverse voices in the team. Such an approach can lead to people being blocked for longer periods of time until the call takes place but can help with time management and a reduction in interruptions. As a different strategy, we also witnessed some teams manually signaling to one another when they could and could not be interrupted by setting their status in the chat. Some teams are now even experimenting with tools that automate this by monitoring individuals at work [e.g., Pulse (https://getpulse.team)].

Regular Standing Meetings
Creativity can benefit from the deep understanding individuals have about an architecture or system. This knowledge can be imparted to others with less experience and knowledge through regularly scheduled meetings, such as software maintenance design meetings, architectural forums, and recurring product backlog refinement sessions. For example, we have observed hybrid maintenance design meetings in which a small core team drives the week-by-week discussion with a broader set of participants on emergent production issues, new requests by clients, proposed designs for enhancements to the product, the development pipeline, and best practices-all in a single meeting. 7 Since the team spans offices in the United States and India, the time of the recurring meeting is carefully chosen so that participants in those locations can join and assist in the decision-making process. The core team is almost always fully present, with other participants rotating in and out as needed, either to field their own questions or, by invitation, to serve as a domain expert in a particular discussion.
An alternative approach is where the remote software team is empowered to make the decisions and presents them back to a team of experts in a regular meeting for post hoc review. In our research, we encountered a remote team that uses architecture decision records (ADRs) to document its decisions and rationale following its own internal discussion about potential solutions. These ADRs are then presented to a wider architecture team in a weekly forum. This approach has the benefit of helping the team make immediate progress without waiting for the standing meeting yet provides a safety net because decisions are reviewed and, as necessary, refined and changed. As a side benefit, since the forum is held over video conference, other teams and individuals can (and do) join and learn as the ADRs are discussed.

Hybrid Hackathons
Hackathons are a great way to promote an organization's penchant for

FOCUS: THE FUTURE OF SOFTWARE DEVELOPMENT IN A HYBRID WORLD
creativity and a regular highlight of many companies' calendars. Most directly, hackathons can generate many interesting ideas, whether to identify potential features that may be included in a future product release, come up with entirely new product ideas, or simply have fun together and be creative around some other kind of

RESEARCH ON CREATIVITY IN SOFTWARE ENGINEERING
Research on creativity has increased over the past few years, and it is no different when it comes to software engineering, S1 as it is now widely understood that design and creativity are an integral part of software development. In this sidebar, we introduce six resources that together provide a base understanding of creativity in software engineering: 1. Amabile's paper "Componential Theory of Creativity" S2 is widely influential across creativity research. The theory identifies four components that are necessary for creative work to occur and succeed. Three components lie within the individual, namely, domain-relevant skills, creativity-relevant processes, and intrinsic task motivation, and one component lies outside the individual, namely, the social environment in which the individual is working. 2. Glass wrote a classic book on creativity in software engineering, S3 detailing how software development is primarily a complex problem-solving activity, which requires creativity. 3. Design thinking as a philosophy and approach to creative design has influenced software development practice. Parizi and colleagues systematically analyzed 127 papers published from 2010 to 2021 that discuss design thinking in software development, resulting in a variety of insights into which design thinking methods and practices are used in software engineering teams and how and why. S4 4. One area of software development where creativity has received a significant amount of attention by the research community is requirements engineering. Mahaux and colleagues present a framework identifying factors that need to be addressed to facilitate collaborative creativity in requirements engineering, S5 and Mohananai et al. argue that if creativity and novelty are required, then requirements should be framed more like ideas, in a less absolute manner that is open to further refinement and reframing. S6 5. In their paper "How Software Development Group Leaders Influence Team Members," da Silva and colleagues articulate how different styles of leadership influence creative software development activities. S7 It is important to note that to date, little research has been performed on creativity in hybrid and even fully remote software teams. While much research has focused on information workers in hybrid settings, software developers have not been singled out specifically. Much research is needed, and we hope to see more work on this topic in the near future. design brief. Indirectly, but no less importantly, they lead to people broadening their professional network, increases in employees' motivation, and opportunities to learn new skills. 8 While hackathons originated as inperson events, with some adaptations, they can be conducted remotely. It is essential to create a sense of togetherness by dedicating chat channels and virtual whiteboard tools to the event, facilitating social breaks via Zoom and other such tools, and broadcasting live video of the participants at work. Task tracking software, such as Trello (https://trello.com), may be needed to ensure awareness of who is working on what when a participating group is split across multiple locations. It is also essential to ensure that the hackathon ends with a celebratory closing session that is synchronous but also recorded for those whose time zones prevent them from joining live. Without explicit measures such as these, hybrid hackathons can quickly degenerate into largely isolated efforts, thereby losing the benefits of working together and being part of a largescale, fun, and creative effort.
In our research, we encountered one organization that had recently completed a successful 48-h hackathon distributed across North America and India, with the goal of developing the minimum viable product for an internal application for use by its software teams. The feedback from participants was that they appreciated the level of inclusivity and feelings of equality despite the participants having varying levels of experience as engineers and tenure in the company. The participants self-organized, leading to engineers expanding their company network and negating some of the typical feelings of isolation that can exist in hybrid environments. 9

Distributed Mob Programming
Mob programming is an effective way to bring people together on a piece of code to creatively improve it in some way. This practice, too, can be run remotely, provided supportive tooling (e.g., Zoom and Miro) is in place so that all participants can follow along and contribute and enough of an overlap in time zones exists to provide a large common window of time for everyone to join.
From a creativity point of view, mob programming harnesses the power of the group to implement better solutions than if one were working alone. One engineer we spoke to in our research works in a team that has used mob programming for developing all user stories and bug fixes for the past 18 months, even though the team is distributed across different North American time zones and locations. The team found that the benefits of mob programming included the adoption of better technical practices, reduced knowledge silos, and higher trust and collaboration among team members as well as improved software delivery performance. To ensure full participation and reduce fatigue, the team ensured that the three roles (driver, navigator, and observer) were rotated every 15 min.
Mob programming in a hybrid team can introduce new challenges compared to colocated mob programming. Beyond the obvious technical challenge of quickly rotating who is in control of making edits [that can be overcome by tooling, e.g., mob (https:// github.com/remotemobprogramming/ mob)], there is the human aspect. Some people are more comfortable with mob programming when working remotely and participate more than when colocated, whereas other people are less inclined to participate in remote mob programming sessions. 10 It is key that mob programming takes place in a safe environment where all are comfortable in contri buting irrespective of experience and domain knowledge. Thus, it is important that expectations for how to engage are clarified before a session, especially in terms of informal protocols by which people raise new issues, contribute to the existing issue being discussed, and make space for others to contribute. Adjusting to the hybrid reality, we have seen teams use virtual whiteboards and shared documents to publicly capture thoughts and to-dos from participants, so a running list can be maintained without interrupting what already can be a less seamless conversation than in person.

Temporary Colocation
All the preceding approaches have been used successfully in hybrid It is not unusual for individuals to be blocked in some way in a task and need an ad hoc conversation with one or more colleagues to progress.

FOCUS: THE FUTURE OF SOFTWARE DEVELOPMENT IN A HYBRID WORLD
settings. Yet, for some teams, the approaches are still insufficient in cases where challenging work has to be performed that requires team members to work closely together for extended periods of time. In such cases, we have seen teams revert to temporary colocation, for instance. by remote team members being brought to the main office, the lead architects visiting a remote location, and the entire team going to a separate location altogether for a retreat. Such colocation can happen on short notice when the need arises and can be done in a more systematic manner. For example, we spoke to one company that fully supports remote work yet recognizes that face-to-face time is important, so it pays for each team to get together three times a year for release planning activities. This coming together of the team in one location facilitates the intensive creative hashing out of features and designs common to release planning activities and has the additional benefit of spending time together to build important social ties that help foster trust. 11 While doing so is not an approach that can be deployed lightly, particularly in the changed context of home responsibilities that employees are facing postpandemic, we do consider it an option that can and should be considered at times when other approaches are likely to be highly inefficient.

Onward
An important cross-cutting concern is the notion of remote first: teams should do everything they can to ensure they are fully inclusive of all team members and especially those who are not in the office. This might mean choosing a different approach than initially planned and can even go as far as, when one team member is remote, requiring all other team members to join from their desk instead of colocating in a conference room, so the playing field is more level. Placing a priority on remote first, regardless of the approach, can go a long way toward creative success.
The eight approaches are not necessarily an answer to every situation ABOUT THE AUTHORS VICTORIA JACKSON is an informatics Ph.D. student at the University of California, Irvine, Irvine, CA 92705 USA. Her research interests focus on how remote and hybrid software teams collaborate effectively, including the practices, processes, and tools used. Jackson received her M.Sc. in computer science from Manchester University, U.K. She is a Member of IEEE. Contact her at vfjackso@uci.edu.
when creativity may be needed in hybrid software development. Moreover, there is insufficient knowledge as to what approach works when and under which hybrid circumstances. Teams and organizations should be cognizant when they adopt and experiment with any of the approaches: failing fast and learning from reflection are two key meta practices in which they should engage en route to establishing, maintaining, and promoting a creative culture. Analysis paralysis, having too many meetings without much progress, and always employing the same approach regardless of the situation are signs that it is time to consider an alternative.
With strong foundations in terms of an overarching generative organizational culture, 12 established psychological safety, 13 and appropriate tooling, 14 it appears that creativity can flourish even in widely distributed hybrid settings. Our minicatalog of approaches is certainly not exhaustive, but we hope it serves as a valuable starting point and offers inspiration for experimenting further so additional practices can be identified. We would love to hear back from industry practitioners with their experiences applying any of these approaches and to learn about alternate approaches that have been successful in fostering creativity in hybrid teams.