How to fix the biggest obstacle to developer productivity: dysfunctional organizations

How to fix the biggest obstacle to developer productivity: dysfunctional organizations

“Every day, people badge in, buzz in, swipe in, scan in, sign in, or otherwise just walk into their places of work. From that common beginning, the differences in their experiences are vast,” observes the preface to Wiring the Winning Organization, a new book by Gene Kim and Steven Spear.

Chat to developers at any technical event and the truth of that for those involved in software construction and maintenance is soon evident. Some teams are much more productive than others, and the reasons are often more to do with organizational culture than individual talent or availability of resources. “It is the management system that establishes those dfferences, whether work is miserable versus delightful, boring versus engaging, and whether what is experienced when people do their work translates consistently into failure or success,” the authors state.

Kim’s previous books include The Phoenix Project and The Unicorn Project, presented as novels but based on research on how to do (or not to do) DevOps in an effective manner. He spoke to DevClass about the new title, which while not specifically about software development addresses issues that all corporate developers will recognize.

Wiring the Winning Organization, a book by Gene Kim and Steven J Spear

The new book is ostensibly about three mechanisms which together achieve high performance. These are:

  • Slowification: moving problem solving as far as possible into the planning stage rather than fire-fighting issues in production
  • Simplification: the use of “modularization, incrementalism, and linearization” to make complex systems easier to fix
  • Amplification: making it more obvious when problems are occurring (the opposite of attempting to cover them up for short-term advantage)

That said, it is not just a matter of knowing three magic principles. The real trick is having the conditions which make applying these principles possible. Kim and Spear identify this as “social circuitry,” or “the patterns by which information, ideas, materials, and what else is needed flow back and forth.” 

“Most of us have had the privilege of working [in an] organization where the social circuitry fully liberates the full creativity and problem-solving capabilities of everyone in the organization, versus those that constrain or extinguish it entirely, which I’ve also had personal experience with,” Kim told DevClass. “I think leaders are solely responsible for the social circuitry. Their direct contribution to work is not actually doing the work, it’s setting conditions for everyone to do the work easily and well. It really is necessary and prerequisite to create these amazing dynamics that we see in DevOps where you have people gain fast feedback on work, that’s measured in minutes, not weeks, months or quarters.

“I’ve seen so many examples where amazing things are being done in technology, only to be squashed by the boss of that person. Or maybe the technology leader leaves and someone else comes in and essentially undoes everything.”

The book therefore is aimed at leaders rather than developers, though the context of what “leader” means depends: it could mean the leader of a department or team, rather than an overall boss.

The simplification idea is already familiar to most developers, but slowification and amplication perhaps less so. Kim has an anecdote which illustrates all three. In 2005, Apple had a small team working on what would become the iPhone. A book by Ken Kocienda, a software engineer on the team, described what happened when Scott Forstall, SVP in charge of the project, discovered that he could not thumb-type anything intelligible on the latest prototype – with the notable feature of the iPhone being touch control.

“When Scott Forstall couldn’t actually type his name on the phone, it actually caused a 30 day halt, which led to every engineer working on prototypes for a keyboard that would actually work. Otherwise they would kill the project … I love the phrase Kocienda used, he said ‘in all my years at Apple, we’d never halted a fifteen-person project to focus everyone on a single problem,” Kim said.

The story illustrates slowification – dealing with the problem while the device was still a prototype, and amplification, recognizing a critical detail and making the entire team aware that it was make or break for the project. It also illustrates simplification, in the form of incrementalism, since as the book notes, the team “used the already validated OS X operating system, concentrating their attention on novel problems such as the keyboard.”

What will be the impact of AI on software delivery, will it make it easier? Kim’s answer is nuanced. AI assistance like GitHub Copilot, “these things make developers less frustrated, happier,” he said. However he also identified a snag. “What we’re trying to say in the book is that life is a lot simpler when you don’t have silos. The more functional specialities you have, the more the social circuitry is responsible for. Now you have data scientists, you have the ML [Machine Learning] people, you have the AI engineers. You just added three more functional specialists … I would say it is impossible to believe that delivering software is going to get easier. But we’re all going to get pushed there.”

Wiring the Winning Organization (ISBN 9781950508426) by Gene Kim and Steven J Spear is published by IT Revolution.