×hospital-grievances.case
REDACTEDreal work, anonymized — category + problem naming · relative metrics only

Civic systems · public healthcare

Fixing a hospital's broken grievance loop

Complaints entered a register and disappeared. No numbers, no owners, no deadlines — just a book where frustration went to be archived.

role · Product designer & builder — complaint management systemstatus · Built for a government medical college & hospital

§01The problem

In a large public hospital, a complaint is usually a handwritten entry in a physical register. It has no tracking number, no assigned owner, no deadline, and no way for the complainant to learn what happened. The register isn't a workflow; it's a burial ground with good handwriting.

The institution suffers too: administrators can't see patterns — which department, which shift, which recurring failure — so the same grievance gets re-lodged and re-buried monthly. Everyone is angry; nobody is informed.

[ interactive diagram loading… — the register: where complaints go to be archived, not answered ]
fig — the register: where complaints go to be archived, not answered

§02The thinking

Grievance systems fail at intake or at follow-through, and usually both. Intake fails when filing is harder than complaining verbally. Follow-through fails when no named person owns a complaint with a clock running.

So the design centred on two artifacts: a complaint that can be filed in under a minute and instantly earns a trackable ID, and a dashboard where every open complaint sits against an owner and an ageing timer that changes colour as it ages. Not sophisticated — visible. In institutions, visibility is the mechanism.

The escalation path was designed for the institution's reality: reminders and department-level ageing views first, because a system that starts by embarrassing senior staff gets switched off in a week.

+ A tracking ID issued at the moment of filing

acknowledgement after triage

# the ID is the product. The complainant's experience changes the second their grievance becomes a numbered thing that can be asked about.

+ Ageing timers and department dashboards

punitive individual metrics

# the goal is a habit of answering, not a culture of hiding complaints to protect stats.

+ Simple category taxonomy designed with staff

free-text everything

# patterns are the administrative payoff, and patterns need categories that match how the hospital actually runs.

§03What shipped

A patient or attendant files a complaint at a kiosk or phone in under a minute and walks away with a tracking number. The complaint lands in a department queue with a named owner and a visible age. Administrators see heat: which departments accumulate, which resolve, which grievances recur. The register becomes a system with a memory and a clock.

[ interactive demo loading… — from register page to living queue ]
fig — from register page to living queue

§04Outcomes

A number in a minute

every complaint becomes trackable at the moment it's made

Owners and clocks

no grievance sits unowned; ageing is visible to management

Patterns surfaced

recurring failures become administrative evidence instead of anecdote

§05Reflection

Civic software humbles you. The model here isn't the hard part — there barely is a model. The product is institutional: designing incentives so the system stays used after the inauguration photo. I think about that discipline in every commercial AI product I touch now.

$ cat takeaways.txt

  • In institutions, visibility is the mechanism — dashboards change behaviour before policies do.
  • Design escalation to inform before it embarrasses, or the system gets quietly killed.
  • The tracking ID is the user experience.