Company tenure: 2024 – present / ongoing
AI & automation at GreenTomatoMedia
I am Lead Developer: AI & Automation at GreenTomatoMedia. My work connects AI capabilities to real product and operational workflows, including support tools, conversational systems, and editorial software. These are selected contributions, described without private interfaces or data.
- Human-reviewed AI support
- Image & voice context
- Configurable editorial AI
- My role
- Lead Developer: AI & Automation
- Selected stack
- Python · Django · MySQL · Redis · Celery
Inside the system
An approved reply. A human decision.
- 01
Read the context
Use the customer request and the approved localized template catalog.
- 02
Select & validate
Choose a suitable template and check that the request and template are still current.
- 03
Hand over to a person
Save the draft for review, or flag that a human reply is needed.
No suitable template, missing context, or a changed request? The workflow calls for human review.
AI has to fit the work around it
A model response is one part of a feature. The rest includes the information it receives, the controls an operator needs, what happens when the request changes, and where a person takes over.
I joined GreenTomatoMedia as a Fullstack Developer in 2024 and now lead AI and automation development. The examples below show my hands-on work across existing products and internal tools.
Clear inputs, useful controls, explicit outcomes
I work across application logic, interfaces, background jobs, and validation. The systems shown here use Python and Django with MySQL, Redis, and Celery, alongside OpenAI and Anthropic integrations where relevant.
AI support, with a person in control
I built support tooling that asks AI to select an approved localized reply template. The server renders the selected template, and a person reviews it and presses Send. When no suitable template is available, the workflow records a human-review handoff.
The surrounding system includes audited settings, cost controls, background processing, and checks for changed tickets or templates. Those decisions make the review state and the next action visible to the operator.
Image and voice replies that retain context
I improved a conversational AI backend so replying to an image supplies the actual image as vision context, while replying to a voice note supplies its transcript. The quoted context remains available when the new reply also contains media.
The implementation preserves provider fallback, avoids repeatedly attaching old images on every turn, and handles unsupported media formats without failing the whole reply.
AI tools editors can configure
I built editable generation and translation prompts and language-specific rules into an internal content CMS. Content-aware generation and single-item translation use these controls within the editorial workflow.
Editors can adjust supported prompt behavior through the application. I also extended the AI assistance to additional content formats with their own generation and translation rules.
From model capability to usable software
These contributions put AI inside a defined workflow: select an approved reply, carry the right media context, or generate content using editable rules. My responsibility is to make the surrounding software understandable and operable as well as technically sound.
Your project
Need something
like this?
Tell me what your team needs to do and what is getting in the way.
Keep exploring
Other work.
Gym operations across 5+ branches
Operations platform for a regional gym chain: geofenced staff attendance, scheduling, payroll adjustments, customer visit tracking, and stock across 5+ branches.

Sound Healing Chiang Mai
A wellness studio website with booking integration, a shop, rentals, and content in English, Chinese, and Thai.

Torpor for macOS
A native menu bar app to inspect Claude Code memory use, hibernate idle sessions, and return to them later.