Development Accelerants

“A substance used to accelerate a process”
– Merriam-Webster dictionary entry for “Accelerant”

Most people working in development teams have experienced a variety of development velocities. Many teams check all the fundamentals for high velocity: Everyone gets along well, the ratio of senior to junior developers is high, people have standing desks with balance boards and La Croix…you get the picture. Yet, some teams seem to have lightning crackling from their fingertips, while others seem to be barely crawling. Even more confusing, sometimes the same team can behave differently on different projects. What gives?

When a team’s velocity is inconsistent, I hypothesize that development accelerants were present on one project but missing on the other. Although there are many development accelerants, I wanted to propose two in particular: communication convenience and attention isolation.

Communication Convenience

Teams often slow down because of decisions that have to be made or uncertainties that have to be resolved. Maybe the delivery lead needs to know how soon the developer can add the button. Maybe the developer wants to ask the designer if that button text should really be in Comic Sans MS. Maybe the designer is waiting on a response from the client. Each interaction can add friction to the process and slow down development.

Enter communication convenience.

I define communication convenience as the ease in which one team member can communicate knowledge to another. The team, in this case, refers to anyone with information or opinions required to deliver the project. Of course, the current developers, designers, and delivery lead are part of the team, but so is the client, and the previous developers, designers, and delivery leads, too.

A successful delivery hinges on each member of the team communicating what they know to everyone else. And communicating is more than speaking up during a conference call, dropping a message on a Slack channel, or sending an email; it requires the recipients to understand the content. This tends to be maximized face-to-face and minimized in group emails.

Distance reduces convenience, and the shortest distance/highest convenience I’ve experienced is when teams are co-located as much as possible.

People often mock the horrible, terrible ordeal of getting out of the chair and walking two whole rows down just to ask the designer what font to use, but it actually does reduce communication convenience. Asking the designer about the font may require showing him what you are working on. Now you both have to walk back to your desk and then back to his as he experiments with the different fonts, and finally you head back to implement it. This interaction sounds trivial and it should be, but having the designer immediately behind or to the side of you truly minimizes the effort involved.

Furthermore, consider this applied to our definition of the team. Although having past members nearby is often unfeasible, being able to walk down a row to get clarification on some old part of the application is faster than coordinating a call. Even more powerful is having a co-located client provide immediate feedback. It’s the difference between pairing on a complicated ticket and reviewing 1500 lines of changes a week after it was coded.

Attention Isolation

Now that the developers, designers, delivery lead, and client are all bumping elbows, team velocity should triple, right? Well it might, but it might not. You may find that, although the client is supposed to be sitting nearby, they’re often in meetings or otherwise inaccessible. Although technically, communicating with them is now more convenient, actually doing so is as challenging as ever.

What the team needs is attention isolation.

I define attention isolation as the ease in which non-project concerns can be dismissed by team members. People generally recognize that interruptions are bad. A quick Google search of “interruptions at work” turns up articles with headlines like “Interruptions At Work Are Killing Your Productivity” and “Work interruptions can cost you 6 hours a day.”

I would argue that while this may be true for your work as an individual, being interrupted for relevant, project-related reasons can often help deliver the project successfully. More interruptions are to be expected with high communication convenience. However, non-project related interruptions can stop a productive workday in its tracks.

Even worse is when key decision makers have their attention split constantly. At a previous job and project, my product manager was assigned to two other unrelated projects. The backlog became ungroomed, questions went unanswered, and the product manager was often in meetings for his other two projects. Even when he was physically sitting next to us, we were never sure which project he was working on and how much context he had of the current one.

Although companies may worry that focusing an individual’s full attention on a single project may leave them underutilized, I’d suggest that many projects run smoother and faster with that sort of attention.

Conclusions

Having these accelerants at the beginning and end of the projects has the greatest impact on velocity. In the middle of a project, most of the necessary questions have been answered and the unknowns have time to be answered.

At Atomic Object, we have high communication convenience and attention isolation. Although the most difficult task is co-locating and attention-isolating the client, doing so can yield many benefits.