Spike Solution
Details
- Also known as
-
Spike, Technical Spike, Research Spike
Core Concepts:
- Time-boxed
-
A spike has an explicit, non-negotiable deadline (hours or days, not weeks). When time runs out, the spike ends — even if the answer is incomplete. An unbounded spike has become speculative development.
- Single question
-
A spike answers one specific technical question: "Can library X handle our throughput?", "Will the auth provider accept these claims?", "Is Approach A or B faster?". Multiple questions mean multiple spikes.
- Disposable
-
The code is throwaway. It lives in a branch (or scratch repo), gets studied, and gets deleted. Reusing spike code in production defeats the purpose — spike quality is deliberately rough.
- Output is a decision, not a deliverable
-
The point of a spike is to reduce uncertainty so a decision can be made. Common outputs: a short writeup, a benchmark number, a "yes/no" answer, an ADR. Never a pull request to main.
- Reduces estimation risk
-
Spikes are commonly used when a story cannot be estimated because of unknown unknowns. After the spike, the team can estimate with confidence.
- Low ceremony, high focus
-
No code review, no test coverage, no polish. The constraint is "learn the answer as fast as possible", which is the opposite of production code.
- Explicit in the backlog
-
"Spike: investigate X" is a legitimate work item. Teams should track spikes as first-class, not hide them inside regular stories.
- Key Proponents
-
Kent Beck ("Extreme Programming Explained", 1999, 2nd ed. 2004); Ron Jeffries popularized the term in early XP writings
When to Use:
-
Estimating a story is impossible because of unknown technical risk
-
Choosing between two approaches requires empirical evidence rather than debate
-
A new library, framework, or API is being evaluated
-
Performance, scalability, or integration assumptions need verification before commitment
-
LLM prompting: "spike the approach" cleanly signals explore, don’t build
Related Anchors:
-
Tracer Bullet - Also exploratory, but tracer bullets are kept and iterated on, not discarded
-
Walking Skeleton - Production-capable end-to-end scaffolding; the opposite of a spike on the throwaway axis
-
Pugh Matrix - Decision-support technique a spike often feeds into