
MY ROLE
Lead Product Designer
DELIVERABLES
Wireframes
High Fidelity Screens
Responsive Design
Design System
Prototype - Interaction Design
Handoff Documentation
TEAM
Accurate Voting Services
Project Manager
Front-end & Back-end Developers
QA
YEAR
2024
What Was the Problem?
Accurate Voting Services (AVS) runs legally binding elections for Homeowners and Condominium Owners Associations. Everything was on paper, which meant:
printing, mailing and hand-counting hundreds of ballots for every election;
counting errors, especially in cumulative voting weighted by units, that could invalidate an election;
no way to know if quorum was reached until the envelopes were opened;
owners away from the property effectively losing their vote.

The Challenge
A ballot is a legal document, so the platform couldn’t simplify its wording, structure or counting rules. It had to reproduce them exactly for admins and owners with very different levels of digital comfort. It also had to keep votes secret while recording who voted, and accept mail-in ballots without breaking anonymity.
Building a Ballot That Matches the Law
I designed a ballot builder where admins create each measure with the rule it requires: multiple select with a vote limit, select one, text answer, cumulative voting by units, and abstention. The system does the math and enforces the limits for the voter. Ballots can be saved as drafts, reused as templates, previewed and exported as PDF, with a separate set of text styles made for print.

A Voting Experience That Reads Like the Legal Document It Is
The digital ballot keeps the structure and language of the paper version, so it feels just as official. Owners don’t need an account: they get a passcode by email, confirm their units and vote. A live counter prevents invalid ballots, and a confirmation step shows every choice before the vote is final.

Anonymity and Accountability at the Same Time
Admins need to know who voted, but never how. I separated the two everywhere: one view lists who voted, when and how (online or mail), and another shows only the totals per measure. Mail-in votes go into the same anonymous pool, and a vote can be revoked without ever being revealed.

Getting Messy Real-World Data Into the System
Voter lists come as spreadsheets full of duplicates and missing data. Instead of rejecting the file, the CSV import shows which records conflict before anything is saved. Deleting anything tied to an active ballot requires typing a confirmation word.

Creating a System - and Making It Work on Every Screen
The platform works on desktop, tablet and mobile for admins and voters. I built a design system with every recurring element and defined responsive behavior inside each component. Modals, for example, are centered on desktop and anchored to the bottom on mobile, with different ways to close them.

Developer Handoff Documentation
Much of this product’s behavior isn’t visible in a static screen, like vote limits, anonymity rules and error states. I documented every feature with front-end notes, plus a general page for repeated patterns, and marked each error found in client interviews where it happens.

Conclusion
I turned a legally binding paper process into a digital platform without bending any of its rules. Admins do much less manual work, owners vote from anywhere, and every ballot stays secret and auditable.
Disclaimer: some client data has been replaced for confidentiality