Six years of fullstack web development, across frontend, backend, and mobile.

Two hours behind my team in Japan, six ahead of the one in Spain, seven ahead of Iceland, half a day off from the US team I worked with for years. I have never met most of them in person.
Lately that has mostly meant Ruby on Rails, Go, and TypeScript, on the parts nobody sees: moving a Rails monolith over to Go, migrating production databases without dropping a row, keeping an AI recommendation engine cheap enough to leave running.
Writing
All 11 piecesAndroid Dark Mode Fix in Tauri: A Debugging War Story
For weeks, the native Android status bar and navigation bar refused to update when toggling dark mode in a Tauri app. The JS code called the right function. The Rust handler logged the invocation. But...
Apr 8, 2026
My First Time Being a Trainer: Teaching Next.js to a Diverse Class
A friend asked me to teach a Next.js class organized for women and people with disabilities. I said yes immediately. It was my first time being a trainer, and I had no idea what I was getting into. T...
Mar 10, 2026
How I Became 1st in Japanese Elementary Class
I joined an elementary Japanese class in April 2025 as a complete beginner. 4 months later, I finished 1st in my cohort. This is the exact system I built — the scraper, the spaced repetition algorithm...
Feb 28, 2026
Kei — Architecture of a Motorcycle GPS Tracker
I built a motorcycle GPS tracking SaaS platform called Kei. The core requirement: receive location data from existing GPS devices in real-time, display historical routes on a map, and let users send c...
Feb 20, 2026
Building a Cost-Efficient PDF Chat App with OpenRouter
I built a PDF chat app — upload a document, ask questions about it, get answers powered by an LLM. The hard part wasn't the architecture. It was keeping the monthly bill under $20 while the app had ze...
Jan 12, 2026
Projects
DetailsKei — Motorcycle GPS Tracker
React Native, MQTT, Node.js, GPS, IoT, Relay
Prototype
Haipasar — Digital Grocery Platform
Django, GraphQL, Vue.js, PostgreSQL, JavaScript
Live