Estimation Language
Give professional, calibrated estimates in English — from hedged time commitments in standups to order-of-magnitude back-of-envelope calculations in system design discussions.
Time Estimates
Give hedged estimates, qualify uncertainty, and revise estimates with professional language.
Start →Back-of-Envelope Estimates
Narrate order-of-magnitude calculations: DAU, storage, throughput, and scale reasoning.
Start →Reading SLAs & SLOs
Interpret uptime percentages, downtime budgets, and service level terminology.
Start →Performance Metrics Language
Narrate latency improvements, error rates, throughput gains, and percentile statistics.
Start →Capacity Planning Language
Express resource requirements, scaling assumptions, and infrastructure projections clearly.
Start →Frequently Asked Questions
What vocabulary do software engineers use when estimating tasks?
Estimation vocabulary: story points (relative effort units), t-shirt sizing (S/M/L/XL estimates), ballpark estimate (rough approximation), rough order of magnitude (ROM) (estimate within 50-100% accuracy), spike (research task to reduce uncertainty), velocity (team's historical delivery rate), buffer (contingency time added to estimates), scope creep (unplanned additions that expand the estimate). Each appears in planning meetings and project discussions.
How do I give a software estimate with appropriate uncertainty?
Communicating uncertainty: "My rough estimate is 3-5 days — but I'd want to spike on the authentication flow first to confirm", "This is a ballpark figure; the actual effort depends on [X]", "Based on similar work, I'd estimate 2 weeks, plus or minus 20%", "I can give you a more accurate estimate after we've completed the design phase", "This is a ROM estimate — it could be anywhere from 1 to 4 weeks until we understand the requirements better."
What is the difference between an estimate, a forecast, and a commitment?
Critical distinction: Estimate — a data-based approximation with acknowledged uncertainty ("probably 2 weeks"). Forecast — a prediction based on current velocity and backlog ("at current pace, we'll finish in Sprint 12"). Commitment — a promise to deliver by a specific date, implying shared accountability. Developers should be able to distinguish these: giving an estimate but having it treated as a commitment is a common source of frustration.
How do I push back on an unrealistic deadline in English?
Professional deadline pushback: "Based on our current velocity and the scope, 2 weeks isn't realistic — I'd estimate 4 weeks minimum", "To hit that date, we'd need to cut [X feature] or add another engineer", "What would we need to descope to meet that deadline?", "I can commit to [smaller scope] by [date] — the full scope needs more time", "Can we validate the requirement before we commit to a date? We might find a faster path." Frame it as problem-solving, not refusal.
What does 'spike' mean in agile estimation?
A spike is a time-boxed research task to reduce uncertainty before estimating — "Let's do a 2-day spike to explore the payment API before we estimate the full integration." Types: technical spike (explore technology), functional spike (clarify requirements). A spike has a fixed timebox and a defined output (a recommendation or prototype). Used when a story is unestimable due to unknown technical complexity.
What is t-shirt sizing and when is it used?
T-shirt sizing uses S/M/L/XL (sometimes XS and XXL) instead of numeric story points. Used for: high-level estimation early in a project, comparing epics and initiatives, portfolio planning when precise estimates aren't possible. In conversation: "Let's t-shirt size these epics for the roadmap — I'd call the payment integration an L, the reporting module an XL." T-shirt sizing is relative, not absolute — what's L for your team may be M for another.
How do I explain estimation variance to non-technical stakeholders?
Explaining variance: "Software estimates are inherently uncertain because we're building something new — unlike manufacturing, we can't predict exact duration for creative problem-solving", "Think of it like asking how long a research paper will take — it depends on what you find", "Our estimates get more accurate as we learn more — the first estimate has 50% variance, but after the design phase it narrows to 20%". Use analogies; avoid defensive language.
What is planning poker and how is it run?
Planning poker is a consensus-based estimation technique: each team member independently selects a card (Fibonacci: 1, 2, 3, 5, 8, 13) representing their story point estimate, then all reveal simultaneously. If estimates diverge (e.g., some say 3, others say 13), discuss the differences — they reveal different assumptions. The discussion is more valuable than the final number. Run it with: "Everyone, please pick your estimate and we'll reveal on three."
What is Hofstadter's Law and how is it relevant to IT estimation?
Hofstadter's Law states: "It always takes longer than you expect, even when you take into account Hofstadter's Law." It's a humorous but accurate observation about software projects. In practice, use a 1.5–2× multiplier on your first estimate to account for hidden complexity, interruptions, and scope changes. When someone asks "how long?", experienced engineers say "twice as long as I think" as a rule of thumb — and they're usually right.
What is the cone of uncertainty in software estimation?
The cone of uncertainty describes how estimate accuracy improves as a project progresses. At project initiation, estimates can be off by 4× (25% to 400% of actual). After requirements are set, accuracy improves to 1.5-2×. After detailed design, to 1.1-1.25×. This is why: initial estimates should be presented as ranges, not single numbers; estimation gets more accurate with more information; committing to exact delivery dates at the start of a project is unreliable.
Estimation phrase reference
Hedged time estimates
- Rough estimate: "I'd say around 2–3 days, but that could change once I look at the data layer."
- Qualifier: "assuming no surprises / assuming the API is stable"
- Range: "somewhere between 3 and 5 days depending on complexity"
- Revised estimate: "I need to revise my estimate — it's looking more like a week now that we've scoped the auth changes"
- Under pressure: "I can give you a number, but I'd want to caveat it — I haven't seen the spec yet"
Back-of-envelope language
- Assume: "let's say 10M DAU, so roughly 115 requests/second on average"
- Order of magnitude: "we're talking about tens of gigabytes, not hundreds"
- Rounding: "rounding up to be safe" / "conservative estimate"
- Per-unit: "if each user uploads ~5 photos at 2MB, that's 10MB per user per day"
- Extrapolate: "at 5× growth over 12 months, we'd need…"
SLA & metrics vocabulary
- Uptime clause: "99.9% uptime = ~8.7 hours downtime/year"
- Error budget: "we've consumed 40% of our monthly error budget"
- Latency: "median latency" (P50) / "tail latency" (P99) / "P95 latency"
- Throughput: "X requests per second" / "Y transactions per minute"
- Improvement: "reduced P99 latency from 1.2s to 280ms — a 4.3× improvement"