bangkok has roughly 2,100 active startups and a thai mid-market that runs on duct-tape software: line oa for customer messaging, flowaccount for the books, a tangle of marketplaces (shopee, lazada, tiktok shop, line shopping), a shopify or wix shop, and a google sheet that holds it all together. when a founder needs an actual product, the options are a manila body shop (cheap, drifts on quality), a thb 80,000 freelancer (cheap, disappears mid-build), or a 30-person bangkok agency (expensive, slow, deck-led). i sit in the middle: senior craft, fixed sprint price, real product shipped.
the default stack is next.js + supabase + claude. it is what i ship at home for european clients (horsetonic dtc, enky real-estate crowdlending, behva healthcare). same stack maps cleanly to bangkok workloads: fintech onboarding, lending or kyc flows, hospitality booking layers, dtc commerce extensions, line oa customer service agents, marketplace pricing sync. aws singapore for regional latency, fly.io when an edge layer matters, vercel for the web tier.
sprints are the unit. a 12-week sprint for a series a fintech who needs underwriting v1 in production by q4. a 6-week sprint for an expat-founded f and b group who needs a booking system across four venues. a 2-week productized sprint for a thai dtc founder who needs the klaviyo + shopify + line oa integration that does not exist as a thb 1,000 per month app. each sprint locks scope and price upfront. no creep, no surprises, no estimate revisions at week 9.
you own everything from day one. github repo under your org, supabase project under your billing, vercel team under your account, claude usage on your anthropic console. handover is the default state, not a deliverable. i never sit in the middle as a vendor you cannot fire. that is the unlock most bangkok agencies hide.