Core Idea
Incrementalists and Completionists are two opposing orientations toward progress — satisficers who ship at “good enough” versus maximisers who solve it right — both necessary in a healthy team but pathological when one type manages the other without awareness of the difference.
Lopp’s Incrementalist/Completionist dichotomy identifies two distinct personality orientations toward progress that coexist — and frequently conflict — in software teams.
Incrementalists
- Core orientation: Satisficer — sets a “good enough to ship” threshold and stops when met
- Strengths: Speed, momentum, pragmatism; keeps teams shipping
- Failure modes: Accumulates technical debt; builds local optima that resist later structural improvement
- Mantra: “Ship it. We’ll fix it later.”
Completionists
- Core orientation: Maximizer — cannot commit until the solution approaches its theoretically optimal form
- Strengths: Long-range vision; sees the two-year and five-year solution; prevents structural debt from compounding
- Failure modes: Delivery failure and paralysis; the ideal becomes the enemy of the shipped
- Mantra: “If we’re solving this, solve it right.”
Why Both Are Necessary
A healthy team requires both types. Incrementalists prevent analysis paralysis; Completionists prevent the codebase from becoming unmaintainable — which ultimately stops Incrementalists from shipping at all. The argument between them, at the level of specific decisions rather than ideology, is the argument a team should want to have.
The Dysfunction: One Type Managing the Other
- Completionist managing Incrementalists: Reviews become exhaustive quality gates; teams experience endless redesign cycles
- Incrementalist managing Completionists: Technical concerns dismissed as perfectionism; structural debt accumulates invisibly
Managing the Mix
- Make the type difference explicit — name it without stigma
- Separate design discussions (Completionist-led) from delivery discussions (Incrementalist-led)
- Create formal processes for “ship this now AND schedule the structural fix”
- Know your own type as a manager and compensate for its blind spots
- For Completionists: define “done” upfront; use time-boxing as a forcing function
- For Incrementalists: establish visible debt-tracking so incremental decisions are schedulable for payback
Related Concepts
Sources
-
Lopp, Michael. (2019). Managing Humans: Biting and Humorous Tales of a Software Engineering Manager. 3rd ed. Apress. ISBN: 978-1-484-23712-4. Chapter 39: “Incrementalists and Completionists.” Available: https://link.springer.com/book/10.1007/978-1-4842-2158-7
-
Lopp, Michael (Rands). (n.d.). “Incrementalists & Completionists.” Rands In Repose (blog). Available: https://randsinrepose.com/archives/incrementalists-completionists/
-
Simon, Herbert A. (1955). “A Behavioral Model of Rational Choice.” Quarterly Journal of Economics, Vol. 69, No. 1, pp. 99–118.
- First formal articulation of satisficing; the Incrementalist maps directly onto Simon’s satisficing agent
-
Schwartz, Barry, Andrew Ward, John Monterosso, Sonja Lyubomirsky, Katherine White, and Darrin R. Lehman. (2002). “Maximizing versus Satisficing: Happiness Is a Matter of Choice.” Journal of Personality and Social Psychology, Vol. 83, No. 5, pp. 1178–1197. DOI: https://doi.org/10.1037/0022-3514.83.5.1178
- Seminal empirical paper introducing the maximizer/satisficer distinction
-
Cunningham, Ward. (1992). “The WyCash Portfolio Management System.” In OOPSLA ‘92: Addendum to the Proceedings. ACM Press. Summarised at: https://martinfowler.com/bliki/TechnicalDebt.html
- Original coinage of “technical debt”; the primary mechanism by which unchecked Incrementalism imposes costs
Note
This note was researched and drafted with AI. How these notes are written →