How Software Teams Can Learn to Make Beautiful Music Together
On the surface, bluegrass music and software development don’t have much in common. But both work to create something. And in their creation method, bluegrass musicians have a leg up on software teams -- an approach developers might find useful.
Bluegrass is a music style originating in Appalachia from the Irish, Scottish and English influences of the area. Unlike most musical methods, one or more of the instruments involved take turns playing the melody and improvising around it. In music parlance, this is called a breakdown. During a breakdown, musicians play rapid tempos and perform complex chord changes.
The acoustic instruments involved in bluegrass are the fiddle or violin, banjo, guitar, mandolin and upright bass. During some songs, the banjo may “drive,” meaning it takes the lead. In other songs, the fiddle, mandolin or guitar may lead. Even while playing the same song, the musicians may take turns leading.
Software teams, take “note.”
Modern software teams consist of multiple players: developers, designers, architects and quality assurance. Most units are managed by a project manager. This is similar to a bandleader, something not found in bluegrass. However, could a modern team function as a self-organizing unit?
We are not suggesting removing the project manager; someone needs to make sure all requirements are met. However, what if each member of the team took turns leading the development like musicians in a bluegrass band?
For example, at the beginning of the project, the architecture team members need to drive while developers, designers and quality assurance play supporting roles. Next, designers lead while architecture, developers and quality assurance provide support. Then, developers drive the show. Last, quality assurance takes the lead.
This sounds so logical that many people assume this is how teams operate now. However, in most organizations, one part of the process is done while the other rests. In bluegrass, all the musicians continue to play at the same time; however, one musician takes the lead at various intervals.
Bluegrass is played swiftly and to perfection. (Wouldn’t you love to see your projects executed in such a manner?) Unlike popular music, which only requires three chords, Bluegrass is complex. Each musician must be expert at their work. Otherwise, the sound is lost. It’s impossible to hide any mistake made a member of the group, especially by the lead instrument. Average musicians, look elsewhere.
Expert development teams.
Thus, we suggest teams are made up of experts for each part of the process. During specific times in the project, one person takes the lead with the rest supporting them. For example, during the design phase, UI/UX persons and graphic designers work to make a functional and aesthetically pleasing design. Traditionally, developers and architects wait for them to complete before doing more on the project.
What if development and architecture supported them by taking an active role during this process? The architect should confirm the design fits the technical requirements, while development ensures the design is made easy to create. Often design makes UI that requires complex customizations to control. Perhaps the client’s project necessitates some complexity, but could a team create something more straightforward that still fits the requirement?
Studies show teams in which members have an equal voice and a chance to be heard perform far better. According to one such study, Evidence for a Collective Intelligence Factor in the Performance of Human Groups, successful teams use this equal time to raise the “collective intelligence” of the group. These crews perform more efficiently and tend to foster more innovation as well.
When team members are experts at their work, each will instantly recognize problems at every phase and across disciplines. An expert designer will know how to make a compelling design that takes fewer hours to build than another equal one. Expert developers can instantly see how the issues with a design or architecture before the work begins. Expert QA engineers will see the problems within software before it is built. The point is that if all are expert and all work together, they can take turns on taking the lead. The overall project will be created at a lower cost and in less time.
As in jazz, bluegrass music often contains unplanned elements. Because the musicians are experts at their discipline, they can quickly make alterations to the song while it is being played. Musicians might do this to encourage people who are dancing or increasing the duration of a song for a particular audience.
Development teams need to be flexible, too. However, they need to be smart with this flexibility. Consider a change in requirements mid-project. Often, this means that architecture will make changes to the development plan and the developers will do the work. However, if all are trusted experts, development can easily make alterations. The same is true for design and QA. The team should function as a whole -- all being able to modify at a moment’s notice without causing problems for the others in the group.
Can your development team take a beat from bluegrass?