Case study 02
KPInsight
A live productivity dashboard that replaced a hand-maintained spreadsheet in a HIPAA-constrained lab.
Context
The lab runs high-volume clinical diagnostics under HIPAA, with the technology function reporting into the CIO. Nothing that touches specimen data can leave the internal network, which rules out most off-the-shelf analytics.
The problem
Section leads kept a shared spreadsheet of technician output. It was updated at the end of each shift by whoever remembered, so by the time a bottleneck was visible the affected samples had already aged.
I sized it by sitting with three section leads for a week and counting how long each spent reconciling the sheet, then cross-checking against the number of turnaround-time escalations that traced back to stale reporting.
Why this and not something else
The obvious ask was a full LIS reporting module. I did not build that. It would have required a vendor change request, a validation cycle, and a budget line, for a question managers needed answered daily.
I also declined to build technician-level scorecards. The moment individual output becomes a ranked list, the numbers get gamed and the data stops being useful for staffing decisions, which was the actual job.
Decisions and tradeoffs
Build, not buy: the data never leaves the network and the read model is small, so an internal Python service was cheaper than procurement.
V1 shipped with one view — output by section by shift — reading from a nightly snapshot. Live streaming, mobile layout, and export were deferred. The deferral was written down and shared, which is why nobody treated the gaps as bugs.
Constraints
HIPAA meant no PHI in any view, so the model aggregates before it reaches the presentation layer. Legacy shift-handoff workflows had to stay untouched. The engineering team spans the US, Pakistan, and Egypt, so I ran written specs and one overlapping hour a day rather than a standing meeting.
Outcome
The reporting loop went from weekly and manual to same-day and automatic, and the staffing conversation moved from memory to a shared view.
The clearer signal was adoption without a mandate: nobody was told to use it, and the spreadsheet stopped being updated within a month.
What I'd do differently
I would have validated the nightly snapshot decision earlier. It was the right call for v1, but I let managers assume the numbers were live for two weeks before I labelled the freshness on screen, and that cost me credibility I had to earn back.
Open to technical product management roles.