Writing software for over three decades, shipping it professionally since 2009 — payments, logistics, LLM platforms — looking primarily for a senior or principal individual-contributor role; also open to lead engineer, engineering manager, CTO, or tech co-founder positions.
Experience
- Dec 2020Present
Founder
Software consultancy grown to ~60 people and exited.
Founded and run a software consultancy for the past 5 years serving clients in varying sectors from insurance to manufacturing and automobile. Built most of the internal tooling and ops setup required to deploy customers' software without requiring an internal DevOps team, focusing mostly on Go and SvelteKit, but the company itself has architected and deployed software across Java, C#, Python, Ruby on Rails and almost all other major stacks using minimal/lean designs. Acquired by an Australian holdings company and has since de-merged.
- Nov 2019Nov 2020
Lead Software Engineer
Built and ran a minimal ICO portal, enough to certify for Thailand's first SEC ICO-portal license with a team of 3.
Hired a 3-person team and built a minimal version of T-Box's first initial ICO-Portal codebase with mostly KYC and AML reporting functions and integration with blockchain/web3.js to prove wallet ownership. Additionally also advised the SEC team on important technical points, as the technology and regulation was quite new at the time.
- Jun 2019Dec 2020
Chief Technology Officer
Led a major refactoring, rewrite and new insurance software initiative, enabling increased sales.
Inherited a small team of ~5 junior engineers who were struggling with keeping up with business demands and with no prior experience in architecting a high-volume web application. Initiated technology changes on the company's primary product offering and monolith-split rewrite separating frontends from backends allowing faster iteration by the marketing team in terms of SEO.
Also started and initiated agent-focused software by extracting the quoting engine from the primary product and re-purposing it and wrapping it in a new, specialized offering.
- Jan 2018Nov 2019
Director of Engineering
Took ownership of hiring, recruitment, and general people matters handling in the Engineering org, growing it from 15+ to 30+.
Took on hiring work at the organization including screening, reviewing take-home assignments and conducting initial round of interviews. Helped set up peer review systems and conducted general 1-on-1s with peers in the team. Additionally helped the HR team with tooling and automations for the recruitment processes.
- Nov 2015Jan 2018
Senior Developer
Initiated and set up the majority of Omise's Client SDK providing language-idiomatic bindings to the Omise API.
Implemented a transliteration service translating Thai account names to their ASCII-karaoke-speak counterparts using ICU4C bindings. Then, worked on a major refactoring of the KYC module moving Thailand-dependent code behind a common shared interface allowing Singapore and Japan KYC modules to be added cleanly. Took on mobile application and support work after that and started rewriting and creating new bindings for the Omise API for C#, Java, Mobile, Ruby, Python, Go using similar design patterns but adapting them to match the language's primary paradigm.
- Jul 2014Sep 2015
Senior Developer
Shipped Swift and React in production the year each launched.
Wrote the API and web servers, plus the native iOS and Android apps, for a Thai-language study app, adopting both stacks while they were brand new and still churning. Bridged the C# side to a Go server on Unix over protocol buffers — cross-language RPC plumbing from before gRPC made it routine. Also co-authored a book on Go microservices.
- Nov 2013Jul 2014
Technical Co-Founder
Built a content-driven mobile app and the CMS powering it, end to end on a two-person team.
Delivered both halves myself: the native iOS and Android apps users saw, and the full backend feeding them — backoffice servers, the content API, and the CMS that managed it all. Designed a deliberately minimal architecture shared across both native clients to keep them at parity in quality and behavior. Along the way assembled a lightweight Go scaffold from idiomatic libraries — the direct predecessor to PRODIGY9's fx, still in heavy daily use.
- Nov 2011Nov 2013
iOS / Android / Node.js Developer
Built a Node.js pub/sub system controlling every device in a hotel from a single mobile app.
Designed a text-based, PEG-parsed TCP protocol — and the Android SDK that spoke it — to let one app control the TVs, air conditioning, and other devices across a medium-sized hotel, since few existing protocols fit at the time. On a separate project, added SIP dialing to an iOS community app by writing gossip, an open-source Objective-C wrapper over the C-based PJSIP library on Grand Central Dispatch.
- 20112011
Developer
Shipped five mobile apps across five platforms — iOS, Android, Windows Mobile, Bada, and BlackBerry.
Delivered distinct native apps for several clients, including a major newspaper, each platform on its own toolchain. Also wrote a code-submission verifier for the company hackathon that accepted and auto-validated entries.
- 20102011
Founder
Built and open-sourced Sider, an idiomatic C# Redis client, back when Redis was brand new.
Designed the API to mirror Redis commands closely; it was listed on the official Redis clients page as the more idiomatic C# option.
- 20092010
Senior Developer
Cut map-tile storage nearly in half on an in-house mapping engine.
Extended a legacy mapping app that shipped with no original source available; the files on disk were obfuscated. Built its tile-compression tool, a batch pipeline that re-encoded terabyte-scale PNG tile sets to 8-bit indexed PNGs. Documented the engine's internals across ~40 wiki pages, and built a Silverlight/DeepZoom viewer that hid the API integration behind a Google Maps-compatible interface, so existing client code needed no changes.
Open Source
- 2026
ACE
Accelerated Coding Environment — a team's coding standards, skills, and project context, synchronized into every AI coding session.
- 2026
kien-thai
Teaching LLMs to write natural Thai.
- 2013
vim-thai-keys
Vim keymaps that keep Thai-language input from fighting normal mode.
- 2012
gossip
SIP client library wrapping C-based PJSIP in a clean Objective-C API.
- 2010
sider
An early Redis client for C#/.NET, from the year Redis appeared.
Speaking
- 2023
- 2023
Passive Engagements
Held part-time — each venture runs day-to-day on its own team; involvement averages a chat message a week and architecture guidance once a quarter.
- Feb 2022Present
Chief Technology Officer
Took a logistics-ERP startup from zero to paying customers in production.
Built the founding team and architecture for a logistics-ERP platform: one app that tracks an operation from the field through to accounting, so profit and loss surface the moment a driver logs their last stop. Now lead engineering and technical direction, and run the infrastructure myself.
- Oct 2023Present
Chief Technology Officer
Architected the LLM/RAG engine behind a conversational-AI platform, live with paying customers.
Founding CTO: built the team, set the architecture, and directed the build. Designed a "brain-split" system: a stateless conversation engine over LangChain, backed by a separate event-sourced core API. The engine can be re-seeded from the core at any time, so a dedicated ML engineer can focus on conversation quality; the core guarantees no data loss. Now leading a refactor toward a message-middleware pipeline (reply generation, guardrails, MCP invocation), and building a vibe-coding platform with built-in storage for chat-first markets like Thailand, where users live on LINE.