🔒
Protected · NDA

this work is under wraps.

The detailed process is protected, but here is the public version. Have the passcode? Step in for the full case study.

roleFounding Product Designer
outcomeLocalized audio production cut from days to hours
scopeResearch, product design, and production frontend
that passcode didn't match, try again
no passcode? email me and I'll happily walk you through it. ✦
← back to work
the brief
It starts with one line.
I'm listening…
step 01 · translate
First it's translated the way a native would actually say it.
🇺🇸Hi, how can I help you today?
🇪🇸Hola, ¿en qué puedo ayudarte hoy?
🇯🇵こんにちは、ご用件をお伺いします。
🇰🇷안녕하세요, 무엇을 도와드릴까요?
🇩🇪Hallo, wie kann ich Ihnen heute helfen?
step 02 · clean up
The tricky bits get fixed before any AI reads them out loud.
Call (415) 555-0132four one five, five five five, zero one three two
Måneskin/ˈmɔːneskin/
step 03 · assemble
OnePin wires the assembly line: the right voice for each language.
Script Input
1 line · source set
○ Ready
Translator
es · ja · ko · de
○ Ready
Normalizer
numbers · names · dates
✦ Auto
Voice Generator
English (US)
Inworld · Realtime TTS-2
Voice · Deborah
Voice Generator
Spanish
Google Cloud · Gemini 3.1 Flash TTS
Voice · Charon
Voice Generator
Japanese
Naver · Clova
Voice · 하지메
Word Accuracy
Pass ≥ 93% · Retries 0 of 3
Naturalness
Pass ≥ 70 · Retries 0 of 3
Export
Onepin storage
step 04 · judge
Every take gets scored. Anything weak fixes itself.
scores · accuracy / naturalness / clarity
🇺🇸Inworld · Realtime TTS-2 · Deborah969594
🇪🇸Google Cloud · Gemini 3.1 Flash · Charon979695
🇯🇵Naver · Clova · 하지메728879
🇰🇷auto-picked for ko-KR989796
🇩🇪auto-picked for de-DE969495
scoring five takes against the bar…
Five languages, one bar. And nobody listened to nine thousand takes.
Agentic AI · 0 → 1 · workflow orchestration · designed + built

from conversation to a production-ready voice workflow.

Describe the job in chat. OnePin turns that intent into an inspectable node graph, chooses the right voice stack and applies the quality checks that make it ready to ship.

Founding designer: I designed and built the production surface, from user research to shipped code running live.

see it live → onepin.ai
10 days hrs
End-to-end localized-audio pipeline, collapsed from ~10 days to a few hours (minutes for short scripts).
Pipeline speed
5 1
A five-step manual chain (engineer → bulk API → CSV → human eval → manual fix) replaced by one decision layer.
Workflow
9,000+
Throwaway audio files a team would generate to QA a single 3,000-line script (~3 takes per line), the over-production OnePin removes.
Waste eliminated

Trusted by teams shipping voice at scale

HeyGenHyundai Motor GroupNVIDIASierraBlandJohns Hopkins

customers publicly listed on onepin.ai

Role

Founding Product Designer · led design, one of two designers, 0→1

Team

10 people, founder (voice researcher), engineering, two designers (I led design)

Timeline

Q1, Q2 2026 · incl. 3 weeks on-site in Seoul

Tools

Figma · Figma Make · Claude Code & Python

What I did

Owned OnePin's production surface end-to-end: research, platform definitions, the chat-agent and node interface, and the automated pipeline. Designed and built by me, shipped live. Engineering built the eval backend the surface drives.

Impact

Collapsed a ~10-day localized-audio pipeline to hours, replaced a five-step manual chain with one decision layer, and removed 9,000+ throwaway QA audio files per script.

Constraints

A 0→1 product with no precedent, built to sit on top of any third-party TTS model across many languages.

01 · Context

fluent in english, broken everywhere else.

English TTS is mature; every other language degrades on translation, and buyers aren't multilingual enough to hear it. OnePin knows which model wins for each language, so businesses can reach markets they couldn't serve before.

02 · Problem

nobody knew if the voice was even right.

01

Can't judge quality

No shared way to tell if an AI voice even sounds human.

02

Which API, which language?

Every API wins for a different language. Teams just guessed.

03

A 10-day pipeline

Five hand-offs before a single line ships.

the signal · interviews + reddit
which API works best for Spanish?
AITubersPodcastersEnterprise broadcasters
Asked over and over, and every interview confirmed the same 10-day reality.
the old way · one 3,000-line script
0
takes of AI voice, every one waiting for a human ear.
03 · The shift

from a 10-day chain to one layer.

A football match in English, headed for a global audience. Before vs. after OnePin.

a 10-day manual chain
localized audio in hours, not days.

Ten days of hand-offs and defensive bulk runs, replaced by one visible production layer teams can run end-to-end.

The bet: the slow part was never making the audio, it was judging it. So OnePin judges. It picks the model, checks every take, and the bulk runs disappear.

the throughline
automate the taste, not just the task.
04 · The agentic leap

describe the job. watch the workflow build itself.

A user explains the production goal in chat. OnePin translates it into a visible node graph, connects the right models and validators, and keeps every decision open to inspection.

the interaction model

Chat is the command layer. The graph is the source of truth.

the shipped interactionrepresentative production workflow, details redacted
01

Capture intent

The user explains the output, languages and constraints in plain language.

02

Expose the assembly

OnePin maps the request to visible nodes and connects the production path.

03

Keep control

The user can inspect, change and rerun the workflow before anything ships.

usability rationale

natural language starts the work. direct manipulation keeps it trustworthy.

Agents interpret a goal, choose tools, act, observe the result and adjust. OnePin exposes that loop instead of hiding it behind chat, so people can understand the plan before trusting the execution.

Ask Plan Connect Validate Review
01

Say the goal, not the syntax

Conversation captures the production intent, languages and constraints without making users assemble the pipeline first.

02

See what the agent understood

Every selected model, validator and connection appears in the graph, turning invisible reasoning into an inspectable plan.

03

Correct the smallest wrong thing

Users can edit one node, rerun a branch or take over without rewriting the command or restarting the workflow.

04

Automate within boundaries

Validators handle repeatable judgment while people retain control of exceptions, final review and shipping.

Research grounding: OpenAI agent design foundations, Anthropic agent and workflow patterns, Microsoft HAX correction guidance, and Google PAIR explainability and trust.

05 · Process

designed for humans, and for agents.

Straight to the people living the pain, then prototype fast and lock direction in a month.

in their own words

“I can run ten different TTS APIs, but I still can't tell which one actually sounds right for Spanish.”
Diego R.AITuber · Multilingual
“We over-produce everything defensively, thousands of files, just so a human can catch the bad takes later.”
Hana S.Audio Producer
“By the time a single line is approved, it's been through five hand-offs and about ten days.”
Marcus L.Production Lead

reframe the question

Stopped asking "is this voice good?" and started asking "does it meet these testable criteria?", turning taste into a rubric a team and an agent could both act on.

prototype the decision layer

Designed one surface that picks the model and explains why, making the machine's judgment legible instead of burying it in charts.

validate against the manual chain

Tested the layer against the real 10-day workflow on live multilingual scripts, the decision surface collapsed it to hours.

ship the system, not screens

Wrote platform definitions from scratch and automated the manual steps as one-command skills, a human or an agent can run a production end-to-end.

06 · Designing the judgment

teaching a machine to hear taste.

"Is this voice good?" used to be a gut call. I turned it into repeatable criteria, so every workflow applies the same quality standard and surfaces anything that needs a person.

inside the layer
One decision rail, from script to shipped.
In
script, text, or a voice note
Correct
text fixed before synthesis
Decide
the winning model, per language
Validate
accuracy · naturalness · clarity
Out
only what clears your bar
The rest is flagged for a human. Friction only where it protects quality.

Every correction and validator is selectable, so creators and broadcast teams can set different standards without rebuilding the pipeline.

start with a script, typed or uploaded

the pipeline wires itself, node by node

set the bar. every line is held to it

run it. ship what clears

new 101 ▶ Run
Script InputPaste · English (US)
Translatores · ja
Normalizer✶ Auto
Voice GeneratorInworld · Deborah
Voice GeneratorGoogle · Charon
Voice GeneratorNaver · 하지메
Word AccuracyPass ≥ 93%
NaturalnessPass ≥ 70
ExportOnepin storage
Script Input
Paste scriptUpload file
Hi, how can I help you today?
29 CharactersClear
Source Language
🇺🇸 English (US)
Voice Generator
Language🇺🇸 English (US)
ProviderInworld
ModelRealtime TTS-2
VoiceDeborah
🇪🇸 Spanish · Google Cloud · Gemini 3.1 Flash TTS · Charon
🇯🇵 Japanese · Naver · Clova · 하지메
Word Accuracy
Retries0 of 3
Pass≥ 93%
Naturalness · Retries 0 of 3 · Pass ≥ 70
○ Ready
Export
Onepin storage▶  ⤓
○ Ready
44%
07 · Solution

the smart layer, made visible.

Conversation captures intent. The graph exposes execution. Four decisions keep the system legible, editable and trustworthy:

TTS makes voice. OnePin makes it production-ready.

1Two ways in, one workflow

Conversation and direct manipulation update the same production graph.

2The judgment is legible

Every pick comes with a score and a why. Trust it, or override it.

3Uncertainty is surfaced, not hidden

Anything below the bar goes to a human before it ships.

4Taste is tunable, not baked in

Every check is a switch. Same engine, your bar.

the real thing, recorded

OnePin productionlibrarysettings
OnePin agent panel: describe the localization job in plain language and the agent routes the model, injects phonemes and explains its choice OnePin node graph: script in, corrected, validated against naturalness/word accuracy/noise/pronunciation, ready to ship
the OnePin production surface · some details redacted out of respect for the team

one platform, every surface

OnePin home: create a workflow, browse templates, recent workflows
Workflows list with runs, drafts, statuses and search
Voices library: filter by language, gender, category, provider and model
Templates: ready-made workflows with categories and validators
Settings, Agent: auto-route scores every model on quality, price and voice match
Settings, API: scoped keys and bring-your-own-key providers

becoming my user

I learned the problem by living in it. Three weeks in Seoul with the founder taught me where accents drift, names break and technically clean takes still sound wrong. Those observations became validators a localization lead could trust, not another generic score.

Whiteboard sketch of the OnePin flow: input, translate, model, validate, errors → notify, Seoul on-site
Whiteboard working through audio normalization and correction examples, Seoul on-site
The Podonos team together at NAVER D2SF, Seoul
behind the build · whiteboards and the Podonos team · 3 weeks on-site at NAVER D2SF, Seoul
08 · How I built it

from Figma to shipped, with AI.

The Figma file was the starting point, not the deliverable. I designed in clean components and standard layout patterns on purpose, so the interface could be built straight from the design, then took it the rest of the way myself.

my process · from idea to shipped

01
own
ship, not just design
02
immerse
3 weeks in seoul
03
scope
judgment, not generation
04
systemize
build-ready components
05
build
figma make · claude code
06
ship
live · onepin.ai
07
iterate
validators keep learning

I used Figma Make and Claude Code to turn the chat-agent and node interface into working code. The pipeline, phoneme injection, normalization and validators became Python skills that people and agents can run. AI accelerated execution; the product judgment stayed mine.

09 · Impact

what it changes, three ways.

For the user
Days hours

Validated against the real 10-day manual chain on live multilingual scripts: localized audio in hours, no API guesswork, no defensive bulk runs.

For the business
Eval, as a product

Quality judgment that used to live in one engineer's head becomes a layer any team, or agent, can run, opening markets the manual effort never justified.

For the org
Agent-native 01

Platform definitions from scratch; the manual workflow automated so the steps disappear, built and shipped as a real system.

built & shipped · now live at onepin.ai

10 · Reflection

we turned a 10-day chain into one decision.

OnePin automates the waste, not the judgment. Teams set the quality bar, the system applies it, and people review only the work that needs them.

As teams tune the validators, their standards become reusable infrastructure instead of knowledge held by one expert.

We were producing thousands of takes by hand just to be safe, then waiting days for a human pass. A layer that decides, validates, and flags the edge cases is exactly what we never had.
Enterprise localization lead · customer research
11 · Beyond the Figma file

I shipped the system, not just the screens.

Platform definitions from scratch, and the manual workflow automated into one-command skills with Claude Code & Python. A human or an agent can run a production end to end.

Built legible for both: accessible contrast and focus for people, predictable structure for agents.