
A Volunteer Management System for SaveCantonese
2025
Role
Product Designer
Timeline
5 Weeks
Team
1 Project Lead
5 Designers
8 Developers
Skills
Competitive Analysis
Cross-team Collaboration
Overview
I worked with my club, Nova for Good, to design and deploy a full-stack web application for Save Cantonese, a non-profit dedicated to preserving cantonese language and culture.
my teammates and i pose for a photo!
Another photo caption here
So what is the deal with savecanto?
SaveCantonese runs a huge operation in order to execute their mission of preserving Cantonese heritage. They have accumulated hundreds of local chapters across the world to teach language and host events
These programs are operated in part by volunteers, which means that there are tons of people to manage. Each volunteer is given access to the Slack, which allows the organization to coordinate logistics and store sensitive information.
A world map of all the savecantonese chapters
Luckily, SaveCantonese has multiple volunteer managers whose sole responsibility is to evaluate which volunteers are active and which need to be removed to ensure organizational security.
Jane Doe
I have to manually input data into the Google Sheets
I have to manually input data into the Google Sheets
Jane is one of the volunteer managers who has to yap yap yap.
The central hub for all the volunteer data exists on Google Sheets. This humongous spreadsheet held private volunteer data manually inputted from Slack and Zoom.


Problem
Clearly, there are a few pain points for Jane. The process she takes to manually manage data in Google Sheets is very taxing.
Security Risks
Managers have to manually scan the spreadsheet for “inactive” volunteers. If they aren’t removed, then sensitive data could be leaked.
Manual Labor
The process of "vetting" activity was tedious and prone to human error. Managers have to cross check data across many columns of data.
Ambiguous
When deciding whether a volunteer is inactive, a manager must declare arbitrary activity thresholds, like if a volunteer hasn’t been seen for 6 months.
Research
To better understand how we should design our solution, we began with two primary research methods to dig deeper into the problem.
After our initial research, we concluded that we needed to provide three key functions.
Strong filtering/sorting options to help managers find who or what they want quickly
The system should automatically flag users as inactive, updated, other status options
Managers should be able to snooze on recommendations and perform other actions on specific volunteers.
Initial Designs
To better understand how we should design our solution, we began with two primary research methods to dig deeper into the problem.
Testing
To better understand how we should design our solution, we began with two primary research methods to dig deeper into the problem.
Final designs
To better understand how we should design our solution, we began with two primary research methods to dig deeper into the problem.













