buildbyRaviRai
Lessonsbuildbyravirai.com
Lessons

5 Years of Building: The buildbyRaviRai Story

RRRavi Rai·Apr 30, 2026·8 min read

In 2021 I was charging ₹12,000 for a WordPress site. In 2026 we shipped a production EV charging management system running 40+ chargers across two cities, and launched a cloud hosting platform built for Indian developers. This is the honest version of what happened in between — what worked, what broke, and what I'd do differently.

The first year, every project felt like it might be the last one. That feeling doesn't fully go away. You just get better at ignoring it.

2021 — Starting in Noida with WordPress

I started buildbyRaviRai as a side project while doing contract work. The first few clients were small businesses in Delhi NCR — a coaching institute, a logistics broker, a restaurant. All WordPress. All under ₹20,000. I was competing on price and losing to people who charged even less.

The thing that changed was writing scope documents before quoting. Every client I had walked away from taught me the same lesson: scope creep kills small projects. A ₹15,000 site that takes 6 weeks instead of 2 because the client kept adding pages is actually a ₹5,000/week project — below minimum wage.

  • Started scoping in writing — every project has a written brief before any quote is given
  • Stopped competing on price — raised rates by 40% in month 6 and lost 2 clients, gained 3 better ones
  • Learned that most Indian SME clients need hand-holding on hosting, email, and domain — build that into the quote

2022 — First enterprise project

The first ₹1L+ project was a Laravel + React admin dashboard for a B2B logistics firm. I underbid it — quoted ₹95,000 and it took 14 weeks instead of 8. But it was the project that taught me what real production software looks like: role-based permissions, audit logs, bulk CSV imports, and an API that had to talk to three other internal systems.

I also learned that enterprise clients judge you differently. They don't care about your portfolio page. They care about whether you show up to calls prepared, whether your code is readable by someone else, and whether you respond to Slack messages within the hour. Those things matter more than the stack you use.

2023 — Adding Flutter and SaaS to the stack

The web-only positioning was starting to feel like a ceiling. Clients kept asking if we did mobile apps. We added Flutter and React Native — not because it was trendy, but because three clients in a row had asked for both a web dashboard and a companion app.

The first SaaS MVP we built had subscription billing (Razorpay recurring), multi-tenant architecture, and a usage-metered feature set. It shipped 4 weeks late because I underestimated the Razorpay webhook retry logic. Lesson: every payment integration has one non-obvious edge case that will eat a full week. Budget for it.

  • Flutter and React Native produce one codebase for iOS + Android — the cost difference between them is ~5-10%, not 2x as many clients assume
  • Multi-tenant SaaS: get the data isolation model right in week 1 — retrofitting row-level security to a shared schema is painful
  • Razorpay recurring billing: the webhook for subscription.charged is not the same as payment.captured — both need to be handled separately

2024 — PlugEV: OCPP and EV charging in production

The PlugEV project was the most technically complex thing we had built. An Indian EV operator needed a CSMS — a central system to manage, monitor, and bill across a network of charging stations. The protocol is OCPP 1.6-J over WebSocket. The backend is Go for the gateway, Laravel for admin and billing.

Forty chargers live across two cities. RFID authentication, real-time session monitoring, remote start/stop, automated invoicing. It still runs in production today at plugev.in.

  • OCPP is a standard — charger implementations vary wildly. We keep a per-vendor quirks file in the repo from day one
  • ~30% of chargers shipped with wrong system time. One vendor ignored our BootNotification.conf currentTime. MeterValues came in timestamped 2018. Billing broke silently for 2 weeks
  • The lesson: never trust any data that comes from the charger without validation. Especially timestamps

2025 — International clients: Rogers, Canada, UAE

The international work came mostly through referrals and the portfolio. Rogers (Canada's largest telecom) found us through a mutual — we delivered two project sprints for their web properties. Saddle Fit Canada was a cold inbound from our portfolio page. A UAE fintech client came through LinkedIn.

Working with international clients changed how we structure contracts and communication. Canadian and UK clients expect weekly written status updates, a clear change-order process, and time-tracked billing for any scope outside the original brief. Once you build those habits they make domestic projects better too.

2026 — CloudNX: building for Indian developers

After years of explaining dollar-denominated AWS bills to Indian clients and setting up DigitalOcean droplets for every new project, we built CloudNX — a managed cloud hosting platform designed for the Indian market. INR billing, Indian data centres, GST invoices, and a dashboard that doesn't require a DevOps background to operate.

It launched in April 2026 with a free 3-month offer for new signups. No credit card required. We built it because we needed it ourselves.

Try CloudNX free for 3 months — cloud hosting built for Indian developers, INR billing, no credit card.

Start free on CloudNX

What I'd do differently

  1. Raise rates earlier. The hesitation to charge more costs more in opportunity cost than the clients you lose by raising prices.
  2. Build the retainer model from year one. One-off projects are a treadmill. Retainers are a foundation.
  3. Write more publicly. The blog posts that documented real problems brought in better clients than any portfolio piece ever did.
  4. Specialize sooner. Being 'full stack' is fine. Being the OCPP/EV charging developer in India is a moat. Niches compound.
  5. Stop over-scoping discovery. Most clients know what they want. The ₹50,000 discovery phase is often a way to delay starting the real work.

Five years in, the work is better, the clients are better, and the projects are more interesting. That's the honest summary. If you're at year one of a similar journey, the thing that matters most is shipping — not the stack, not the portfolio design, not the agency name. Ship things. Write about what broke. The rest follows.

Want to work together? Tell us what you're building — we quote in writing, in INR, without a 3-hour discovery call.

Start a project
RR
Written by
Ravi Rai

Founder of buildbyRaviRai, a freelance web development agency based in Noida, India. 5+ years shipping Next.js, WordPress, Shopify, and Laravel projects for clients in India, USA, Canada, and the UK.

bR

buildbyRaviRai Assistant

Replies within 24 hours

Chat on WhatsApp

+91 74289 19927 · Replies within 24 hours

Pick a quick message to start a conversation on WhatsApp — or type your own below. Your message pre-fills, you hit send from WhatsApp.

Or type your own

We'll send your message via WhatsApp Web or the WhatsApp app.