Skip to content

CASE STUDY

03/Work, selected

07 / 08

Public Voice

A voice survey that asks one smart follow‑up, then lets you go.

Try it live

What I ownedOwnership: Led the engineering

Technical lead: I set the technical direction and built the 2025 voice survey prototype it grew from. Two teammates built most of the production code.

LiveIn production at InnovateUS

Year
2026
Role
Technical lead
With
InnovateUS
Category
Government AI

01/The problem

Surveys ask too much and hear too little.

After-course surveys return six-word answers. Interviews are rich but too slow to run after every course. InnovateUS needed something in between.

02/What I built

A survey you answer out loud, with one smart follow‑up.

  1. 01

    A no-login link opens a short survey. People answer by voice or text, in English or Spanish, and every question can be skipped.

  2. 02

    When an answer is vague, an AI asks one targeted follow-up, never more than two. Then it extracts the task, the workflow, the outcome and the public benefit.

  3. 03

    Privacy is the product: no stored audio, PII redaction in the backend, and results reviewed at the cohort level.

  4. 04

    It grew from a voice survey prototype I built in July 2025 on OpenAI’s realtime API.

03/Architecture

Voice in, themes out, no recordings kept.

The browser only talks to Next.js, which proxies to FastAPI. The backend redacts PII, asks the model whether an answer is specific enough, stores structured extractions, and feeds a cohort dashboard with exports.

01Participant browser02Next.js proxy03FastAPI04PostgreSQL05OpenAI voiceand judgment06PII redaction07Admin dashboard

04/Outcomes

Live at InnovateUS.

  1. Live

    In production at InnovateUS

    Open at publicvoice.innovate-us.org, no login needed.

    Third partySource: publicvoice.innovate-us.org

  2. 0

    Audio recordings stored

    Answers are transcribed and personal details are redacted before anything is saved.

    From the repo

  3. 3 min

    Design target to finish a survey

    The survey is built to take about three minutes.

    From the repo

Check these in the ledger

05/Production notes

Behind the numbers

All receipts for this project
Mechanism

A model judges whether each open answer is specific enough. If not, it asks one follow-up, two at most, and both can be skipped. On submit, extraction pulls the task, the workflow, the outcome and the public benefit in the background.

Privacy

Voice goes through our server to OpenAI’s transcription model and is never written to disk. Redaction runs in three layers (browser pattern match, server pattern match, then an AI pass) and fails closed. The pre-redaction original is not stored.

Evidence

Private repo

The production repo is private. The 2025 prototype it grew from is public.

06/Stack

Built with

  • Next.js 16
  • React 19
  • Tailwind CSS
  • FastAPI
  • PostgreSQL
  • SQLAlchemy
  • OpenAI
  • Render