In just 10 days, I designed and launched Singapore’s Covid-19 vaccination system.
Despite our team starting late, we became the first country in Asia to implement its vaccination campaign, fully vaccinating 92% of the population in 3 months.
I designed a web system for patients to conveniently book vaccine appointments at their nearest clinics, and an admin interface for healthcare staff to manage patients and record vaccinations.
It took an average of 10 to 15 minutes to book an appointment, and we received lots of compliments on how smooth the process was!
How we did it so quickly?
Weekends, public holidays, overnighters. Tight cross-functional collaboration, and ruthless prioritisation. We pushed features that were absolutely critical, then continuously refined it over 6 months.
We were a lean team of 9
2 designers, 2 product managers, 5 engineers. Low communication overheads. Quick and efficient decision-making, full autonomy. In this page (and in this site in totality), you’ll find only the work that I personally did.
Objectives
Authentication, to reserve doses for priority groups
Screen medical eligibility and flag health conditions
Maintain records of each person’s vaccination status
Remind people of their appointments
Ensure the 14-day vaccination window between vaccinations
Fill clinics efficiently, nudge people to clinics with more slots
Goals
Simple, intuitive, and usable for everyone
Booking or changing appointments are a breeze
Easy for staff to use, no tech training required
It’s 2020, the pandemic has just begun.
Want the vaccine?
An invitation arrives
You’ve gotten it because you opted in for the vaccine. You click the unique booking link sent by SMS.
The landing page
You scroll down and see the health advisory. It explains the conditions where you shouldn’t be taking it, and it recommends two doses, 14 days apart.
For authentication, your enter your national id (NRIC/FIN). It’s tagged to your assigned booking code, pre-filled from the link.
A short medical screener
9 questions, you fill it in. These aren’t pre-filled, you have to actively answer them carefully.
Your responses indicate your eligibility.
Select your clinic
It’s at your convenience. A postal code, or a neighbourhood. You see nearby clinics with the most slots first.
Select the dates and times
Book both appointments, so you won’t have them too close or too far apart. Doses are limited. This way, you get to secure your full course.
That’s it, you’re booked in!
Add your two appointments to your calendar, or reschedule them, if you must.
Admin interface to manage patients
This was designed to facilitate vaccinations at the clinics. Clinics could see how many people would arrive and who they were, record medical information, and update vaccination statuses. More details available upon request.
Read on for my design process.

The process
We had 3 days to develop the first prototype. I started with wireframes the day we formed the team. Engineers used this to begin building the interface and backend while I continued refining the UI and content.
The problem statement was clear, there wasn’t much need for discovery research. Rather, the priority was to verify what medical screener questions were needed, and that the forms were quick and easy to fill.
I referenced these hardcopy medical forms and simplified them to create an improved version of the questionnaire.
The original forms weren’t the easiest to understand, so I decided to rewrite them before checking in with the medical experts.
I removed questions that wouldn’t impact the decision to vaccinate,
(e.g. residential status, ethnic group and gender)
Combined questions that covered the same thing,
(e.g. age, date of birth)
I also restructured some questions that were unnecessarily complicated.
(e.g. anaphylaxis = severe allergies, just ask it once)





We conducted multiple rounds of research and refinements at hospitals, clinics, and vaccination centres. We did this cross-functionally, split into two squads with one designer each, taking different locations. This was vital so we could make decisions quickly across design, product and engineering without excessive consultation or debate.
Research areas covered:
Health requirements and vaccination regulations
Guerrilla tested our prototypes with doctors, nurses, and admin staffUsability and user acceptance testing
Mostly with elderly users, as they’re the least savvyOperational processes and implementation
Observed existing systems and processes, and ran controlled pilots onsite to ensure smooth implementation
Fixes that were easily implementable were done within a day or two.