Core Engineering Metrics

BottlenecksADS

Where the time actually goes — candidate visualizations on REAL data (same cohort and rules as everywhere). Pick the ones worth showing.

Interactive: click any status (segment, row, legend chip) to highlight it across ALL views — timelines re-rank by time spent in it; click again to clear. Ticket keys open Jira. CFD legend toggles bands.

A · Pipeline — where a ticket's time lives

imedian + Σ

One bar = the whole Cycle (work start → done), split by status. Width = share of all cohort time. The widest segment IS the bottleneck. Below — the same statuses ranked: median per visit · total days · share.

Bottleneck: Ready For Review39.7% of all time (Σ 60.6d, waiting). All waiting combined: 41.1%; the work itself (In Progress) — 47.2%.

In Progress
med 1.5d · Σ 72.1d · 47.2%
Ready For Reviewbottleneck
med 1.7d · Σ 60.6d · 39.7%
In Deployment
med 0.1d · Σ 17.8d · 11.7%
Ready To Merge
med 0d · Σ 1.8d · 1.2%
On Hold
med 0.3d · Σ 0.3d · 0.2%

B · Flow efficiency — work vs waiting

imedian + Σ

TWO views. The big CALENDAR bar: median Active vs median Cycle — Cycle runs on the calendar (weekends and holidays INCLUDED, as the document demands; time after a bounce back to New is subtracted), Active counts working hours only. The PROCESS bar below removes calendar physics: BOTH sides count only the assignee's working hours (weekdays, minus their BambooHR vacations and country holidays, capped per day) — its remainder is pure process queues.

Of the median 4.7d cycle, hands-on work is 1.3d (= 3.9wd): the ticket waits 72.3% of the time.

27.7% hands-on work
72.3% waiting
process efficiency (assignee working hours only) · hands-on 131.4wd of 134.1wd working time in flow
97.8%
2.2% process queues
where the waiting goes · 108.8d cohort total — TICKET-days of 32 parallel tickets, hence far above the window length
Ready To Merge1.8d · 1.6%
On Hold0.3d · 0.3%
nights, weekends, vacations and the 8h cap inside active statuses106.7d · 98.1%

C · Ticket timelines — the last tickets as segments

i

Each row = one real completed ticket from work start to done; colored segments = statuses. Long same-color stretches across many rows point at the same stage — that's the bottleneck pattern, outliers included.

Longest single stay here: Ready For Review7.2d in ADS-1415. Click a status in the legend to rank tickets by it.

D · Aging WIP — what is stuck right now

i

Open tickets that have not moved the longest (days since the last status change). This is the operational view: today's bottleneck, ticket by ticket.

13 in-work tickets without movement > 7d, 11 of them > 30d. Stuck longest: ADS-305357.7d in “In Progress”.

E · Cumulative flow — queues over time

i

Tickets in each WORK stage, week by week (backlog and done excluded — they drown the queues that matter). A band that keeps widening is a queue that keeps growing — the classic bottleneck signal and its history.

The fastest-growing queue is In Deployment: 03 tickets across the window.