MACI
Private onchain voting with public, provable results.
TL;DR
MACI is infrastructure for private onchain voting with public, verifiable results. After building a MACI-powered funding app in 2021, I joined PSE in 2023 to lead MACI’s engineering team and product direction. My focus was making the protocol easier to build on and use: better performance, less complexity, better developer tools, and support for communities running real funding rounds.
About MACI
Minimal Anti-Collusion Infrastructure tackles a basic problem with public blockchain voting: a briber can check whether you voted as promised. MACI encrypts votes and lets voters secretly change their keys, which makes collusion and coercion unreliable. A coordinator tallies the votes and publishes a zero-knowledge proof that the result is correct, so voters trust the coordinator with their privacy but not with the result.
Vitalik Buterin published the original proposal in 2019: a clever combination of smart contracts and zero-knowledge proofs. Community developers implemented it with Ethereum Foundation support, and it became part of Privacy & Scaling Explorations. An early application was clr.fund, which used MACI to protect quadratic funding rounds from bribery as communities voted on matching funds. Rounds on clr.fund, Gitcoin, and PSE’s own QF stack have since distributed more than $1 million to Ethereum public goods.
My role
Building a real application. I first used MACI in 2021 while leading ethereum.org. Our team spent months contributing to clr.fund so communities could run funding rounds on early layer 2 deployments. My contributions were full-stack but mostly frontend: project applications, BrightID onboarding, cart checkout, and data fetching through a subgraph.
That work fed into the May 2022 Ethereum staking round run by ETHStaker and clr.fund on Arbitrum. With an EF-funded matching pool, the round distributed 440,300 DAI across 21 projects, documented in an EF grantee roundup.
Setting product direction. I joined the MACI team in 2023 and published a public 2024 roadmap with quarterly updates so developers could see and shape our priorities. In early 2024 we shipped MACI v1.2, a refactor that simplified the codebase and improved developer experience, backed by an internal audit, a new documentation site, and a blog.
Supporting adoption. We helped clr.fund upgrade to v1.2 and supported community rounds, including ETH Latam, where attendees allocated more than 30,000 DAI to public goods in Central America and the Caribbean. We built a MACI-RPGF demo for Optimism’s retroactive funding and worked on a Coordinator Service to reduce the technical burden of running a round. I ran the workshops and talks listed below.
In 2024 I moved up to lead PSE, carrying the same focus on practical adoption into the wider portfolio. The team shipped MACI v3 in June 2026, and the repository was archived that August.
Writing and talks
Writing and talks related to my work at MACI.