July 20–24, 2015
Portland, OR

The paradox of technology choice

Michelle Brush (Cerner Corporation)
10:40am–11:20am Wednesday, 07/22/2015
Architecture Portland 256
Average rating: ****.
(4.60, 10 ratings)

Prerequisite Knowledge

This talk is intended for individuals with experience in or exposure to high level design or architectural decisions. Attendees should understand what software architecture is and have some context to the impact of architectural decisions.


The number of languages, frameworks, patterns, and platforms available to software architects and engineers has exploded over time. Initial technical decisions are often easy. Should the system be web-based? Should it support mobile clients? Will it be distributed?

After the easy decisions are made, defining the architecture of a software system often requires navigating the sea of options for frameworks, patterns, platforms, and APIs while still balancing the desired attributes – efficiency, scalability, reliability, usability, and so on. On the surface more options from which to choose would seem better, but the technical work effort required in narrowing down choices can be significant. Software organizations don’t have an infinite supply of time with which to prototype, analyze, and/or assess the multitude of architectural options and impact.

The industry has seen software development teams fall into analysis paralysis where development is delayed as they attempt to make the perfect decisions. It has also seen the poor results of teams making quick, convenient, but poor decisions early on by falling victim to their own architectural biases, such as the second-system effect and resumé-driven development.

This talk frames architectural decisions in the context of behavioral economics. It covers the psychology of how people approach technical choices and the impact it has to the software using data, and examples from different development organizations. The talk provides guidance on how to leverage an understanding of how people approach making choices to steer software engineers and architects into making the right architectural decisions.

Photo of Michelle Brush

Michelle Brush

Cerner Corporation

Michelle Brush is a math geek turned computer geek. She has developed algorithms and data structures for search, compression, and data mining in embedded as well as enterprise systems. In her current role as a senior software architect for Cerner Corporation, she manages and mentors software engineers and architects on test-driven development, software architecture, code quality, and communication. She is also the chapter leader for the Kansas City chapter of Girl Develop It, and one of the conference organizers for Midwest.io.

Comments on this page are now closed.


Yong Guan
07/29/2015 4:45am PDT

Could you share slides? Thanks.

Picture of Michelle Brush
Michelle Brush
07/23/2015 1:40am PDT

Here are the behavioral economics books I recommended at the end of my talk:

  • The Paradox of Choice by Barry Schwartz
  • Nudge by Richard H. Thaler and Cass R. Sunstein
  • Predictably Irrational by Dan Ariely
  • Thinking, Fast and Slow by Daniel Kahneman

I also recommended Sarah Mei’s talk Unpacking Technical Decisions

James Thomas
07/22/2015 6:43am PDT

Could you please post the list of recommended books from the end of the presentation? Thanks!