1
Media Buying
Your ads, placed where your customers actually look. I manage campaigns across Google, Meta, and display networks — turning ad spend into measurable revenue, not just impressions.
I turn data into decisions and campaigns into revenue. With 22 years in digital marketing — from managing MYR 150K+ monthly ad budgets for insurance giants to raising MYR 7 million for social causes — I've learned that great marketing lives at the intersection of analytical rigor and creative instinct. I build strategies grounded in real numbers, not hunches.
Years of experience
Your ads, placed where your customers actually look. I manage campaigns across Google, Meta, and display networks — turning ad spend into measurable revenue, not just impressions.
More conversions from the traffic you already have. I analyze your funnel, test what works, and fix what doesn't — because driving traffic to a leaky bucket is just expensive water play.
Qualified leads that actually pick up the phone. Using AI-powered targeting and proven nurture sequences, I build pipelines that fill your CRM with prospects ready to buy — not just browse.
New markets, strategic partnerships, and revenue channels you haven't tapped yet. I help you identify growth opportunities and build the relationships that turn them into real business.
Dashboards that tell you what to do, not just what happened. I turn your raw data into clear, actionable insights — so every marketing decision is backed by evidence, not guesswork.
Custom tools that save hours, not create headaches. From marketing automation scripts to full web applications, I build solutions that make your processes faster and your team more productive.

Most websites are effectively invisible to AI language models. ChatGPT, Claude, and Perplexity are increasingly the place people go to find answers — but if your site is a JavaScript SPA with no structured content surface, the LLM either can't read it, misquotes it, or skips it entirely. This matters more than it used to. AI citations are a real traffic channel now, and they reward sites that make clean, well-structured content easy for machines to consume. The llms.txt standard — modelled loosely on robots.txt — is gaining traction as the practical way to do this. I've now implemented it across two production client sites and built out a full build-time generator for Next.js. Here's exactly how the whole thing works.

Claude Code is one of those tools that's useful out of the box, but becomes genuinely powerful once you invest a couple of hours in configuration. The defaults are fine. A well-designed config system that persists across every project, loads automatically, and keeps Claude informed about your standards, agents, and workflows — that's something different. I spent time building exactly that: a 4-layer configuration system that spans global rules, workspace-level context, agency-level context, and per-project detail. It's version-controlled, symlinked so changes propagate everywhere instantly, and includes 29 specialist sub-agents, a hooks system that auto-formats and checks code after every edit, slash command skills, and persistent memory across sessions. This post documents how the whole thing works.