Role
Product Designer
Timeline
2025 - Present
Org
Omission
With
Said Zadou | Head of Product
Mike Wu | Full-stack Developer
Afaan Muhammad | AI Engineer
Selin Çakmak | Full-stack Developer
The Mission
Designing the platform that runs a sick-leave case from start to finish, for teams who already have enough systems.
At a Dutch arbodienst, managing an employee's absence spans months and four parties: the casemanager who owns the case, the bedrijfsarts who owns the calendar, the werkgever who employs the person, and the werknemer who's out sick. The clinical judgment lives in the dossier. Everything around it, collecting client information, tracking the case, coordinating a single appointment, is drag that leaks across WhatsApp, Outlook, and voicemail. Happy is the platform that holds all of it: clients, dossiers, tasks, hours, quotes, invoicing, and scheduling. I owned the product design across that system, but this case goes deep on the two surfaces where the design problem was hardest: the dossier overview, where a sick-leave case has to stay legible to users who don't trust software, and scheduling, where coordination has to survive leaving the building.


The audience that shaped every decision
One concern runs underneath the whole platform: our users are not confident with software. Casemanagers are experienced professionals, often later in their careers, who will abandon a tool that makes them feel lost. And the outside parties, employers and employees, will never log in at all.
That single fact produced the two hardest calls in the product, and interestingly, it pushed in opposite directions on the two surfaces. On the dossier, protecting a low-confidence user meant showing more. On scheduling, it meant showing less. Same principle, opposite answers, because the anxiety is different when you're managing a case you own versus completing a task you never asked for.


scheduling, who picks the time?
Coordinating one appointment touches four people who don't share a tool, and the design has to survive leaving Happy entirely, because employers and employees will never log in.

That split the audience into three tolerances for complexity: power users (casemanagers) who want speed and control inside the dossier; professionals (bedrijfsartsen) who protect their Outlook calendar and won't adopt a tool that fights it; and occasional users (employer/employee) who abandon anything resembling another portal and just need a link that works on a phone.
The hardest fork was sequencing, someone has to pick the time, and every option traded control against effort:
Option A, casemanager picks, everyone confirms. Fastest for the team, but it makes the internal user guess two people's availability. The invite becomes a hope, not a commitment, the phone-tag we were trying to kill.
Option B, employee picks first. Cleanest in theory: the person who has to show up chooses. But employees are the least-engaged party, so putting the cold-start on them meant most bookings would stall at step one.
Option C, employer shortlists, employee confirms. The employer selects at least two preferred times; soft holds reserve them; the employee makes one final choice from that shortlist.
I chose C. It puts the heavier task on the more-engaged party and leaves the least-engaged one a single, near-frictionless decision. The soft hold keeps it honest: those slots are genuinely reserved while the employee decides, so the options are still available when the employee picks. It's the sequence least likely to die in the middle.
What we shipped
The Dossier
The full case on one surface, client, employer, employee, history, appointments, status, visible and editable in place. Hierarchy does the heavy lifting so the full case reads as complete rather than cluttered, and the casemanager can see everything is there rather than having to trust it is.
Planningsvenster (Casemanager)
The case manager never leaves the dossier. A three-step dialog, appointment details → date & time → confirmation, where availability is visible before anyone gets an email, so the invite goes out as a commitment, not a hope.
Beschikbaarheid (Bedrijfsarts)
Doctors mark real bookable blocks on their own agenda, Outlook included. The system doesn't invent time, it slices what the arts already offered into inspectable one-hour slots, aligned to how they start their day (:30 stays :30). How you cut 08:30–17:30 into bookable hours is exactly what a casemanager can honestly promise in an invite. That's design, not backend trivia.
Mailbox
The coordination that used to scatter across Outlook, WhatsApp, and voicemail now happens inside Happy, next to the case it belongs to. The casemanager reads and sends email from within the dossier, so a message about an appointment sits with that appointment, not in a separate inbox they have to switch to and search later. The point was never to rebuild an email client, it was to stop the case from living in two places at once.
Results
-40%
Time to schedule a typical appointment
90%
Booking links completed without support
0
Double-book / slot-conflict incidents
what we learned, and what I'm testing next
Happy holds the process; the people hold the decision. Soft holds and preference shortlists are the product saying that out loud. The system guarantees the slot, but never takes the choice.
Two lessons I'm carrying forward: Availability rules are product design, not backend logic. Once I treated the way we slice a day into bookable slots as a design problem rather than an engineering detail, the invite got more honest. A casemanager could now offer only the times the doctor had actually made available. That fix looked technical, but it was really about what the user could promise. Conversation told us the story. Testing will tell us where it breaks at scale. Same lesson as my last project, different product. The next step is measurement, and I'd rather find the bottlenecks than assume they aren't there. What I want to test: Where a planningsvenster stalls. Waiting on the employer? Waiting on the employee? Or expired? How often employers pick just the two required slots versus more. Whether first-time invitees finish without needing a reminder. Whether teamleider notifications cut down on "any update?" messages or just add noise.