Studio render of the Kamleon smart urinal and toilet, each fitted with a wall-mounted hydration display.

Kamleon — backend & fleet scalability

Making every unit behave the same

Kamleon's smart urinals track hydration in real time and report back through a shared backend. As the number of installed units grew, my job was to make sure the code behind them — and the screen people actually see — grew cleanly with it.

What I worked on

  1. 1

    Cleaned up the backend

    Went through the existing codebase and reworked the parts that had been patched together under startup pressure, so new features could be added without breaking what already worked.

  2. 2

    Built for scale

    Restructured how the backend handled a growing number of installed units at once, so adding the next site didn't mean redoing work that should have scaled automatically.

  3. 3

    Kept every unit consistent

    Chased down the edge cases where one installation behaved differently from another, so the hydration reading on the screen means the same thing whichever unit you're standing in front of.

  4. 4

    Cleaned up the screen's UX/UI

    Reworked the interface shown on the wall-mounted display itself, so the reading and status message are clear at a glance to someone who's standing in front of it for a few seconds, not studying a dashboard.

A Kamleon smart urinal installed in a bathroom, showing the wall-mounted hydration display above the fixture.

This is where the backend actually has to hold up — not in a staging environment, but on a wall, mid-install, reporting to the same system as every other unit already live.

Each new site is a new set of conditions for the same code to handle correctly.

Close-up of the Kamleon hydration display showing a percentage readout and status message.
Hydration readout, per unit, per use
A row of urinals, one fitted with the Kamleon smart display, installed side by side in a public bathroom.
One codebase, every installation

Getting the backend clean and built for scale was what let Kamleon keep adding units without the reliability getting shakier with every install — the unglamorous work behind a number that's supposed to just be right, every time, on every unit.