All writing
LessonsJan 1, 20264 min read

The Best Testers I Have Shipped To Were Researchers

Clinical and academic users are meticulous, skeptical, and completely intolerant of losing data. They also write the best bug reports I have ever gotten.

The best testers I have ever shipped to were researchers and clinicians. They are meticulous, they assume the system is wrong until it proves otherwise, and they have no tolerance for a lost record. Every assumption I had about how software gets used came back with corrections.

They do not follow the happy path

The happy path is a story you tell about your users. Researchers explore. They upload a file in a format you never tested, run a query you did not think was possible, and combine features in an order that made sense to them and to nobody on the build team. Every one of those is a bug report, and it arrives with reproduction steps.

Downtime is not an inconvenience

In consumer software an outage is an annoyance and a churn number. In a clinical setting it can hold up someone’s care. The difference has to live in the architecture, not just the status page. On the clinical platform I worked on, the uptime target was set on day one as a hard requirement, and it drove real decisions: circuit breakers so one slow dependency does not stall the whole request, graceful degradation so a partial system still does something useful, failure modes explicit enough that the right person hears about the right problem. The same intolerance for lost records is why exercise results needed a composite key.

The schema was a draft

The clinical data model we started with was revised three times, each time because of how the system was actually used rather than how we pictured it. Not a planning failure. The normal shape of the work. Build the migration paths early, while changing the schema is still cheap, the same way a payments prototype had to be rewritten once it was load-bearing.

The part that stuck

Researchers write the bug reports you wish every user wrote. System state, exact steps, expected result next to the actual one. Once I noticed that, I stopped treating them as people filing tickets and started treating them as the other half of the QA team. The reports got better after that.

A skeptical user who tells you exactly how you broke is worth ten who quietly leave.

Amisha

Filed under Lessons · Infrastructure

Coming
Your Agent Has Amnesia. Here's the Dict That Fakes Memory.
Week 2