Decision Making in Software Teams

Alistair Cockburn has described software development as a game in which we choose among three moves: invent, decide, and communicate. Most of our time at No Fluff is spent learning how to be better at inventing. Beyond that, we understand the importance of good communication, and take steps to improve in that capacity. Rarely, however, do we acknowledge the role of decision making in the life of software teams, what can cause it to go wrong, and how to improve it.

In this talk, we will explore decision making pathologies and their remedies in individual, team, and organizational dimensions. We'll consider how our own cognitive limitations can lead us to to make bad decisions as individuals, and what we might do to compensate for those personal weaknesses. We'll learn how a team can fall into decision-making dysfunction, and what techniques a leader might employ to healthy functioning to an afflicted group. We'll also look at how organizational structure and culture can discourage quality decision making, and what leaders to swim against the tide.

Software teams spend a great deal of time making decisions that place enormous amounts of capital on the line. Team members and leaders owe it to themselves to learn how to make them well.


About Tim Berglund

Tim Berglund

Tim is a full-stack generalist and passionate teacher who loves coding, presenting, and working with people. He believes the best developer is one who is well-informed of specifics and can also make deep connections between software development and the broader world. He has recently been exploring non-relational data stores, continuous deployment, and how software architecture should resemble an ant colony.

His firm, the August Technology Group, helps clients with product development, technology consulting, and technology upgrade projects atop the JVM. The August Group's technology preferences reflect the generalist sensibilities of its founder, and its development practices are always lightweight, self-improving, and humanizing by design.

Tim is a speaker internationally and on the No Fluff Just Stuff tour in the United States, and is co-president of the Denver Open Source User Group in the Denver area, co-author of the DZone Clojure RefCard, co-presenter of the best-selling O'Reilly Git Master Class, co-author of Building and Testing with Gradle, and a member of the O'Reilly Expert Network.

He lives in Littleton, CO with the wife of his youth and their three children.

More About Tim »