← Back to The Markdown

2,311 Customers and No Website: What Happens When Your Dad Has Product-Market Fit

· 8 min read

Two thousand three hundred and eleven.

That's how many customers my dad had successfully processed, invoiced, and fulfilled through WhatsApp before there was a single webpage with his name on it.

To understand how wild that is, you have to understand the macroeconomic reality of Sri Lankan e-commerce. Online shopping, at least as we define it in Western markets with slick Shopify checkouts and seamless Stripe integrations, barely exists here. It is a profoundly low-trust, cash-first economy. If someone buys something online, they absolutely will not part with their money until they are physically holding the product in their hands. Everything runs on Cash on Delivery (COD). The "checkout" isn't a cart; it's a conversation.

My dad, Jayantha, is a mechanical engineer by trade. He spent years running an engineering firm in Saudi Arabia before retiring in 2015 and moving back to Sri Lanka. But engineers never actually retire; they just find progressively more complicated ways to avoid having a normal hobby.

In 2023, for reasons even he hadn't entirely articulated to me, he started running Facebook ads for laser pointers. It was a tiny spark that somehow combusted into JDN Online, an island-wide event lighting and entertainment equipment business.

For the last 18 years, I've been buried in the trenches of complex sales and SaaS. The last 5 in complex long B2B cycles, so I had been deeply conditioned to expect six-month sales cycles, rigorous negotiations, and highly structured revenue engines. When I landed in Colombo in September and walked into my family home, the contrast gave me whiplash. Especially since I had just exited CorePlan.

I walked into a house that was functioning as a makeshift fulfillment center. Fog machines taken over the dining table. Professional-grade laser lights were stacked in the corners of the living room. And the collective soundtrack of the house, the car, and meals was the relentless ping of Facebook and WhatsApp notifications.

Every single transaction followed the exact same, brute-force path:

  1. Sourced via a viral Facebook ad.
  2. Converted via a highly manual, personal WhatsApp chat.
  3. Shipped across the country and paid for in cash on the doorstep.

My dad is turning 70 this year, and the man had somehow cracked the code on running a really tight facebook ad campaigns, with content and copy designed on Canva!

This whole thing, it was working perfectly. And it wasn't just a cute retirement side-hustle. It was a real, cash-flowing, 2,311-transactions-deep operation. My dad had stumbled into product-market fit without even knowing the terminology.

So what if he had a online store front? He had previously tried to hire agencies to build him a digital storefront, but he was always too busy manually chatting with leads to actually brief them.

His entire back-office operation was held together by Microsoft Excel. He was spending his nights doing manual data entry, exporting CSVs, and cross-referencing courier waybills.

This man had a functioning business. He just didn't have a business behind it.

So, I did the most logical thing a son with a tech background could do. I decided to build him a full operations platform and a website myself.


Three things worth pulling apart

It sounded like a straightforward builder's vacation project. A way to do a solid for my dad while I was spending time on the island.

But as soon as I opened the first cursor window, I realized the trap I had walked into. I wasn't just building a digital catalogue. I was trying to build a digital bridge for a business that existed entirely on interpersonal trust and WhatsApp pings.

To understand the architecture of this build, there are really three layers worth pulling apart:

First: What does it actually take to build infrastructure for a business that already works without it? A business with 2,311 customers and zero systems is not a greenfield build. It is a high-stakes retrofit. You cannot disrupt the existing revenue flow to introduce "better" technology.

Second: Why did the website come second, and what had to come first? The answer to this reveals a fundamental truth about how AI tooling actually functions in the real world, far removed from the polished Twitter threads.

Third: How do you build for an elderly user, and a market, that inherently distrusts the internet? When your end-user is your 70-year-old father, and your target market views digital payments with intense suspicion, standard UX best practices go out the window.


The "two-day job"

I should ground my technical capability here, I'm not a developer/software engineer.

But, I've spent a decade building websites using Webflow. It has been my absolute favorite tool, a comfortable environment where I knew every shortcut and limitation.

But recently, I had been shifting my workflow. I wanted to move beyond low-code and simple "vibe coding" into serious, AI-driven full-stack development. I had been building small personal apps with Cursor and Claude Code at the time, but I hadn't actually shipped a production-grade, full-stack application with this new stack yet.

I looked at JDN Online and saw the perfect sandbox.

I decided to build his site using Next.js, TypeScript, and Tailwind, with Shadcn UI for the components and Sanity CMS as the backend.

I figured it would be simple. A two-day job.

This is the specific kind of lie you tell yourself when you're staring at a fresh window, armed with a powerful AI coding assistant.


1. Why did the website come second, and what had to come first?

If you want to build an e-commerce website, you need a product catalogue. If you need a product catalogue, you need photos.

Here is the problem with event lighting: how do you photograph a laser? They are purely atmospheric products. A photo of a matte black metal box sitting on a the dining table wasn't the vibe i was going for.

The website had to look professional so I wanted consistent shots from the same 3 angles for all 33 distinct products.

So, the very first thing I built wasn't the website. It was an image generator to make the tool to make the website possible.

Google literally dropped nanobanana on the day I sat down to build this. So on the day I took standard, horribly lit smartphone photos of my dad's black metal boxes and fed them into the model. The app essentially became JDN Online's most dedicated, least-paid intern. Rendering professional hero shots that he can still use today.

Funny thing is this a pattern I see constantly when advising founders: the thing you think you need to build first (the website) is rarely the actual bottleneck. The prerequisite is almost always an operational constraint (the assets).

2. What does it take to build infrastructure for a business that already works?

Seventy-two hours.

September 29th to October 2nd, 2025. That is how long the core website sprint actually took. I mapped it out in Figma first, because at the time the models were not good at riffing directly based on instructions. I still like using figma for my designs but my workflow has evolved since then.

Anyway, one of the reasons the architecture took so much mental bandwidth happened on day one. It wasn't a database choice; it was a localization choice.

The site had to be trilingual from the first commit. English, Sinhala, and Tamil.

This could not be a flimsy, bolt-on translation layer that relied on Google Translate. It had to be baked deeply into the Sanity CMS data model.

Why?

Because majority of dad's customers don't message him in English. They message him in Sinhala and sometimes in tamil. If you build a Sri Lankan e-commerce site that only works in English, you aren't building for the market. You are building for the affluent, English-speaking sliver of it.

This single design decision doubled the complexity of the routing and the CMS schema, but it was non-negotiable.

By the end of the seventy-two hours, we had a full product catalogue, customer reviews, structured SEO data, and crucially, instead of 'add-to-cart' it is a 'Whatsapp' button.

The website was never designed to replace the WhatsApp conversation. In a low-trust economy, that conversation is the closing mechanism.

The JDN Online homepage. 72 hours, trilingual, WhatsApp-first.

3. How do you build for a user that doesn't trust the internet?

If you look at the commit history of this project, it reads like a chaotic travel diary. There are 231 total commits spread across three time zones: Sri Lanka (+0530), SE Asia (+0800), Australia (+1100).

Since stepping back from my COO role in July, I'd been splitting my time between Sydney, Bali, and Colombo, meaning code was being shipped sometimes at 35,000 feet or poolside in Uluwatu,Bali.

PostHog is something i discovered a few years ago now and has been a key part of checking the CorePlan website visitors were following the customer journey as well as checking for bugs.

While most people might not call it fun i love looking through session replays at night to catch up on the day (this is why i'm single)

I noticed that a lot of visitors from sri lanka were just bouncing off the website after a 3 second scroll and tapping on the language button.

Digging deeper, screensizes of the visitors were actually smaller I thought. So people were struggling to change the language from english to sinhalese or tamil!

So I: 1) increased the touch targets to 44px and increased the typography base to 16px. 2) did an auto browser language detection to automatically serve the user the web page in their chosen language and if it wasnt set have a gentle pop up at the bottom that had the language selector for them.

And presto problem solved.


The business behind the business

My dad didn't actually need a website to find customers. He already had those in spades.

What he desperately needed was a "business behind the business." He needed durable infrastructure. The website was just the first pieces of a machine that could run without him holding it together purely with his smartphone battery and his memory.

I talk to SaaS founders all the time who tell me their biggest problem is "scale." They obsess over top-of-funnel leads. But true scale isn't a marketing problem.

Scale is what happens when you solve the boring, unsexy problems; the product catalogue, the inventory tracking, the trilingual database schema, the 44-pixel touch targets. Well enough that the business stops being solely dependent on one founder's inbox.

Building the codebase turned out to be the easy part.

More on that another time.

Get new posts delivered to your inbox