Sensory evaluation platform
Runs blind product-tasting panels on kiosk tablets and scores them against published statistical thresholds. ASP.NET Core and React on Azure.
- tasting methods, each with its own statistics
- 8
The problem
Sensory analysis is how a food manufacturer answers "can anyone actually tell the difference": between an old recipe and a new one, or between two suppliers of the same ingredient. It is a laboratory discipline with published methods, and the statistics are the whole point. Whether a panel's result is significant depends on the panel size and the chosen significance level, read from published critical-value tables.
What I did
Two years of continuous feature and correctness work across the API and the React front end: methodology configuration (which options each method exposes, how discriminants and product categories bind to methods), scale handling for the bipolar and five-point methods, the results page, company and respondent management, and a long tail of fixes in the places that matter.
That class of bug is the reason the work matters. A wrong boolean in methodology configuration does not crash anything; it silently changes which questions a panellist is asked. A significance threshold wrong by one produces confident, plausible, false conclusions about a product going to market.
A decision and its cost
Panellists ranked samples by dragging them into order. Then the panel moved to a kiosk setup where drag-and-drop was not reliably usable, and I replaced it with explicit move-up and move-down controls. The faster interaction on a normal device was lost; in return it works on every device the actual users have, and it is keyboard- and screen-reader-operable by construction. The input device is part of the requirements, and it changes after you ship.
Related
Employee onboarding platform
Coordinates every department's tasks when someone joins the company. ASP.NET Core and React inside Microsoft Teams, with background jobs doing the scheduled work.
Short note Feature contributor
C# · ASP.NET Core · EF Core · React