My First Client: Between Idealism, Reality, and a 500k IDR Check
June 24, 2026 — 6 min read
Every developer has a story about their first paid project. For me, that story is tied to a premium mobile spa service in Kuala Lumpur, Malaysia calledCozy Home Massage KL. It was a journey filled with excitement, awkward moments, extreme over-delivery, and most importantly, invaluable lessons about the real-world software industry.
It Started with WhatsApp and University Theories
The opportunity came through a classmate's recommendation. His mother runs a premium outcall massage business in Kuala Lumpur, Malaysia. Because her business needed a professional web presence to attract tourists and expats, my classmate suggested that she contact me. Hearing the news, I was thrilled. Finally, a real-world client who would actually pay for my code!
Since we were separated by the sea—with me in Batam and the client in Malaysia—our initial discovery sessions were conducted entirely via WhatsApp. As a student who had just finished semester 1 and 2 at Politeknik Negeri Batam, I saw this as the perfect chance to put my academic knowledge into practice. Before writing a single line of code, I prepared formal documents: an RPP (Project Execution Plan), SRS (Software Requirements Specification), PRD (Product Requirement Document), and a simple ERD (Entity Relationship Diagram). At the time, I believed these documents were the absolute foundation for keeping a project professional and on track.
80% Complete and the Pricing Dilemma
The early development phase went smoothly. In a short time, the website was about 80% complete—only leaving domain registration and deployment to the server. At this point, I received the first down payment (DP).
To be honest, considering the workload, the fee was incredibly cheap. During the initial negotiation, I didn't know how to price my work. I was afraid that charging too much would scare the client away, but I also didn't want to undersell myself too heavily. In the end, I just agreed to the client's budget to secure my first portfolio piece. Do I regret the price tag? A little, yes (haha!). But do I regret the experience? Not at all. The lessons I learned were priceless.
Meeting Face-to-Face and Facing Reality
After two weeks of remote communication, we finally met in person to review the website. Was it awkward? Absolutely. But since it was my first client, I dressed up and prepared as professionally as possible. I expected a straightforward demo, final approval, domain purchase, and deployment.
However, the real-world industry had other plans. During that face-to-face meeting, the client came up with a list of new revisions—details they felt couldn't be easily explained over text messages. That's when the real challenge began. For the next week, I had to work day and night to address revisions that turned out to be quite complex.
Over-Delivery: 100+ Pages and 4 Languages for 500k IDR
Our initial agreement was simple: a single landing page. But after hearing the client's high expectations to compete with competitors in the Kuala Lumpur search market on an under-1-million budget, I couldn't bring myself to do a half-hearted job. With a total budget of only 500k IDR (~$30 USD), I decided to push my limits.
Without the client's knowledge, I built a much more complex system:
- Multi-Page Architecture: Transitioned from a single landing page to a multi-page setup to build a strong SEO structure.
- Multilingual Support (4 Languages): Implemented language switching to target Kuala Lumpur's diverse demographic: Indonesian, English, Simplified Chinese, and Malay.
- Professional SEO Optimization: Configured high-level search engine optimizations, including Google Search Console, crawl budget optimization, LLM-friendly crawling (via
llms.txt), dynamic XML sitemaps, and sitemap indexing. - Maps & WhatsApp Integration: Integrated location mapping using the Google Maps API (free tier) and a fully responsive WhatsApp chat trigger across all devices.
How did I write content for over 100 static multilingual pages? The answer is artificial intelligence. I utilized multiple AI bot accounts to translate content and write drafts for targeted neighborhoods in KL (such as KLCC, Bukit Bintang, and Mont Kiara). It was a exhausting yet highly rewarding process.
What I Learned
Charging 500k IDR for a 100+ page multilingual website with professional SEO might sound like a joke to senior developers. But for me, it was never about the money. It was about proving to myself that I could deliver, taking responsibility, and getting a real-world business masterclass.
Here are the key takeaways I am bringing to my future projects:
- Get a Written Contract: In the future, I must establish a clear contract upfront that defines the scope of work, revision limits, timeline, and budget.
- Manage My Idealism: While offering the best quality is great, over-delivering unrequested features for free isn't always efficient. Focusing on and delivering the client's core requirements must be the priority.
- Value My Own Skills: I shouldn't be afraid to charge a fair price when the quality of the work is professional.
Today, Cozy Home Massage KL is live on the internet. Every time I see that green logo in my browser, I remember the sleepless week I spent chasing revisions for 500k IDR. It was an imperfect start, but it's a memory I cherish, and it has shaped me into a wiser developer.