A couple embracing on a granite outcrop above Yosemite Valley: he lifts her off the ground as she laughs, with pine trees and snowy mountains behind them

Hi, I’m Cameron. I’m a photographer, filmmaker and operations leader.

I run business operations at Doodle Pirates Foundation and build the systems that keep a small team moving. Since 2012 I’ve also been a photographer and filmmaker, with 200+ clients and 100+ films and episodes behind me.

02 / Featured project · Doodle Pirates Foundation

An all-in-one Internal Dashboard, concept to production in under two weeks.

Designed by me and built fast with Cursor cloud agents on an Airtable ERP, including Ask Otis, a Claude-powered assistant with human-in-the-loop approval.

<2 wksConcept to production
152Reviewed pull requests
1,218Automated tests
~20AI agents

Under the hood

How the data flows

Illustration · not a screenshotRequests & writesReads coming backAsk Otis, gated by a person
How data flows through the Internal DashboardA team member signs in with a work Google account through Cloudflare Access. Requests go from the Dashboard to the API, which runs on the same Cloudflare Worker. The API checks permissions, then reads and writes Airtable and saves docs to Google Docs. Shifts, PTO and sick days are pushed one way to Google Calendar; nothing comes back from the calendar. Ask Otis suggestions go to a person, and only what that person approves is written to Airtable. A text version follows the diagram.How data flows through the Internal DashboardA team member signs in with a work Google account through Cloudflare Access. Requests go from the Dashboard to the API, which runs on the same Cloudflare Worker. The API checks permissions, then reads and writes Airtable and saves docs to Google Docs. Shifts, PTO and sick days are pushed one way to Google Calendar; nothing comes back from the calendar. Ask Otis suggestions go to a person, and only what that person approves is written to Airtable. A text version follows the diagram.
Text version of the diagram
  1. Team member (browser, phone or shop-floor kiosk) → Cloudflare Access. Sign-in with a work Google account, before anything else loads.
  2. Cloudflare Access → Dashboard (React + Vite). Signed-in requests. Each person’s Employee Level decides what they can see and do.
  3. Dashboard → API (Hono, on the same Cloudflare Worker). Requests such as a task, a shift or a PTO day.
  4. API → Airtable (source of truth). Reads, and writes after a permission check on the server.
  5. API → Google Docs. Documentation pages, which are real Google Docs. The live editor saves a few seconds after typing stops.
  6. API → Google Calendar (one way). Shifts, PTO and sick days, pushed after a schedule save, a “Resync this week” press or a shop job assignment. Out-of-office days and holidays stay off the calendar, and nothing is read back.
  7. Ask Otis (Claude-powered assistant) → A person, for approval. Editable cards: a new task, a task update, or a project or milestone update.
  8. Approve → API, then Airtable. Only what the person approved is written, after another permission check on the server.
  9. Separately, each person’s own Google Calendar → My Work. Today’s meetings, read-only and private to that person. This is not part of the schedule sync and isn’t drawn above.
Portrait of Cameron Kuey

04 / About

Hi, I'm Cameron Kuey. I sold candy bars in high school, and I've been building things ever since: businesses, stories, and lately, the systems and software that help teams do their best work.

Today I'm the Director of Business Operations at Doodle Pirates Foundation, a nonprofit that trains neurodivergent adults in real-world work skills. I design how the organization runs, then build the tools that run it. Read more about me.