Creative Producer

Brands worked with 20-brand portfolio · 30+ campaigns a year

Selected work

Dog Food Launch Hartfelt · Kevin Hart Creative Development Specialist · 1st AD
Morning Restore Terra Mare · Marisa Tomei Producer
30-Second Spot DebtClear USA · Robert Herjavec Creative Development Specialist
Rodeo Couple DebtClear USA · Robert Herjavec Creative Development Specialist · producer
Grandpa's Day Out AMC × Coca‑Cola Producer · story & concept development

AI integration

I build my own tools. A lot of producing is not producing: the same documents assembled by hand, the same numbers chased, six systems checked against each other. I built agents to take that part, so the hours go back to the creative work.

Decks

Concept and visual research, designed start to finish

Numbskull™

Co-founder & creative director Cover only · 24-page book not shown

About

I grew up between Ethiopia, the Dominican Republic, and Laos, and the thing that traveled was emotion. Content was how it moved. That is why I went to film school and it is still why I do this.

Placeholder paragraph. Two or three sentences on the path from a BFA in Producing to indie features to commercial work, and what you are looking for next. Keep it short enough that a hiring manager reads all of it.

Placeholder paragraph on how you work: the bridge between the creative brief and what actually happens on the day, and why building your own tools is part of that rather than a hobby.

4:5 · portrait

Credits

Feature and short film work alongside the commercial slate

Features
  • Haunted Hookers — Unit Production Manager
  • Local Haunts — Line Producer
Shorts
  • Everythingeater — Producer
  • Bigger / Better / Harder — Producer
  • The Final Cut — 2nd AD
  • Summer's End — 2nd 2nd AD
  • Good Boy — 2nd 2nd AD
Range
  • $0 – $10M budgets
  • Movie Magic, Adobe CC
  • Spanish, Swiss German, Lao

Building a shoot used to mean assembling the same five documents by hand from six different places. It now runs from one command, and the time it takes went from about four hours to about six minutes.

Trigger

/build-call-sheet [Shoot Name] on [Date] once talent is confirmed, scripts are locked, the location is set, and the lunch form exists. The agent checks that readiness before it starts rather than producing a half-built sheet.

The pipeline

  1. Gather from chat, the production schedule, issue tracking, mail, calendar, and the prep and script docs
  2. Confirm the shooting address against the source of record
  3. Ask clarifying questions only where something is genuinely missing, front-loaded in one message
  4. Calculate cast call times backward from the schedule
  5. Apply smart defaults for the fields that are the same every time
  6. Build the call sheet, including weather, nearest hospital, and the ticket link
  7. Build the schedule tab with the correct colour coding
  8. Export the sheet as a PDF
  9. Draft the crew email and every talent email individually
  10. Write talent and hair-and-makeup rows into the freelancer payment record

Source priority

Six systems disagree constantly. The workflow declares an explicit priority order, so when two of them contradict each other the agent resolves it the same way every time instead of guessing.

Delegation

A casting-researcher subagent reads Gmail casting threads end to end and returns a clean table of confirmed talent with roles, scenes, and reps. It never passes raw email bodies back. That keeps the main context small enough to finish the build, and it means far less personal data moves around than if the whole thread were pulled in.

Integrations

Google SheetsGoogle DocsDrive GmailCalendarIssue tracking SlackWeb searchPDF export

Templates

Crew and talent emails render from HTML templates with named variables. The template headers carry the formatting rules, so the tone stays consistent whoever runs it.

Most ad scripts get written from taste. This one is only allowed to build from creatives with real evidence behind them, and it is explicitly forbidden from treating a subjective rating as proof that an ad worked.

The pipeline

  1. Pick the production path, polished spokesperson or clean user-generated
  2. Pick the target offer
  3. Harvest internal winners from the reporting available to me
  4. Harvest external winners from competitors
  5. Name the mechanism, the actual reason the winning ads persuade
  6. Add a recency layer so the script is anchored to now
  7. Write the script as a two-column script and visual table
  8. Secure a production slot and log the outcome

Research subagent

An ad-performance-researcher subagent reads the internal reporting end to end and returns a compact brief instead of a raw dump: which creatives are worth learning from, the angle each one uses, and what is queued for testing.

Finding competitor winners without a paid tool

A written playbook using the public ad library and a longevity heuristic. An ad still running after months is being paid for because it works, and that is a signal available to anyone willing to look properly.

The guardrail I am proudest of

Every source gets audited before the agent is allowed to lean on it. Where a signal cannot actually support the conclusion someone wants to draw from it, the agent is instructed to say so rather than imply otherwise. A tool that quietly launders a weak signal into a confident claim is worse than no tool.

Post-wrap paperwork arrives in the inbox in no particular order, from people who invoice differently every time. This closes the loop without ever being the thing that sends money.

How it runs

The sequence

Layered mail search, a pre-flight check for which documents are actually missing, download into the forms folder, then update only the document-tracking columns.

Where it stops

The agent gathers and files documents. It never drafts the email that forwards them to accounts payable, and it never touches the release, status, or approval columns. I write that email and mark those columns myself. Anything that moves money keeps a person in it.

I wanted to know whether I could take a product idea the whole distance on my own, so I built it. Point a phone camera at a barcode and it returns a score, the reasoning behind it, and something better to buy instead.

The idea

Scan, score, swap. Dr. Gundry's audience already reads labels and mostly cannot tell which products actually fit the philosophy they follow. The app rates any scanned product from 0 to 100 with a plain red, yellow, or green verdict, explains which ingredients were flagged and why, and recommends an alternative. Every poor score is a place a customer can be helped and a product can be sold, which is the same moment.

Built, not mocked up

React and TypeScript on Vite, styled with Tailwind, routed across five screens: onboarding, scanner, result, food guide, and history. Barcode decoding runs in the browser through the ZXing library, so it works from a phone browser with no app store in the way. The dev server runs over HTTPS because camera access requires a secure context, which is the sort of thing you only learn by actually shipping it.

ReactTypeScriptVite TailwindReact RouterZXing

The scoring rubric is a document, not buried in the code

I wrote the rubric as a separate reviewable spec so someone qualified on the nutrition side can check the logic without reading a codebase. I am confident about the build. I am not the right person to be the final word on what counts as a good ingredient, and the architecture says so.

Educational, not alarmist

The tone rule is written into the product spec: explain why something is flagged in Dr. Gundry's voice, and never manufacture a concern to land a sale. A scanner that scares people into buying works once. One that teaches them something is the one they keep on their phone.

Why it is on this page

Not because a producer needs to write React. Because taking something from an idea to a spec, a rubric, a working build, and a pitch is the same job as taking a brief to a finished spot, and the second one is easier to believe once you have seen the first.

These agents touch casting emails, talent contact details, vendor paperwork, and company performance data. That earns a set of rules, not a disclaimer.

Local first

Everything runs on my machine. The workspaces are plain folders of Markdown and configuration files kept locally, with the state and memory sitting in version-controlled text rather than in a third-party service. No production data is uploaded to an outside platform to make any of this work.

Read-only against company systems

The shared trackers are marked read-only in the agent's own instructions. It can read the production schedule and the performance sheets; it cannot write to them. The only sheets it writes to are ones I own.

Least privilege

Each subagent declares an explicit list of the tools it is allowed to call, and nothing outside that list is available to it. The casting researcher can read mail threads; it has no access to spreadsheets or write tools. Scope is set at the agent, not left to chance at runtime.

Data minimisation

Subagents return structured summaries rather than raw source material. A casting question comes back as a table of confirmed talent, not the contents of the mailbox. Less personal information moves through the system, and less of it lingers in context.

A human on every consequential step

Honest about the data

Where a source is unreliable, that is written into the agent's instructions rather than left for someone to discover later, so the tool cannot quietly turn a weak signal into a confident claim.