From 0 to First Paying Customer: How I Validated RezumAI While Taking 18 Units at Cal Poly

The messy, honest story of building a SaaS product between thermodynamics lectures and data structures assignments. Spoiler: my first customer paid while I was in a compiler design class.

August 17, 2025 · 12 min read

The Dorm Room Revelation

October 2024, 11:47 PM. My roommate Jake slammed his laptop shut hard enough to make me look up from my systems programming homework.

"Another rejection," he said. "That's 47 applications, 47 rejections. I'm literally qualified for this job."

Jake wasn't wrong. 3.9 GPA, two internships, solid projects. But his resume? Times New Roman, weird margins, and zero keyword optimization. It looked like something from 2003.

I watched him spend another two hours "fixing" his resume in Google Docs, basically just moving bullet points around. That's when it hit me: everyone was playing a game they didn't understand. The ATS was filtering out great candidates who simply didn't know how to format their experience properly.

"What if there was a tool that could guarantee your resume passes ATS filters?" I asked Jake. He looked at me like I'd just offered him water in the desert. "I'd pay $100 for that right now," he said.

That was the moment RezumAI was born.

The MVP That Embarrassed Me

My first version was garbage. I mean, absolute trash. But I shipped it anyway.

Here's what version 0.0.1 of RezumAI (then called Kolab) looked like:

  • A single resume template (literally just one)
  • Manual keyword counting (ctrl+f style)
  • PDF export that broke 30% of the time
  • No user accounts (localStorage for everything)
  • UI that looked like a CPE student made it (because one did)

I built it in a weekend between a calculus midterm and a digital design project. The code was spaghetti, the design was Bootstrap defaults, and the "AI" was just regex patterns looking for keywords.

But here's the thing: it worked. Barely, but it worked.

The Tech Stack of Shame:

  • Frontend: Vanilla React with CSS modules (no framework)
  • Backend: Express.js on my laptop using ngrok
  • Database: A JSON file. Yes, a JSON file.
  • "AI": 50 lines of JavaScript with hardcoded rules
  • Deployment: "Hey Jake, go to this ngrok URL"

I showed it to Jake first. He used it, applied to three more jobs with the optimized resume, and got an interview within a week. Word spread in our dorm faster than news of free pizza.

Beta Testing With Broke College Students

College students are the perfect beta testers. They're desperate, they're broke, and they'll try anything that might help them land a job. Plus, they're brutal with feedback.

Week 1-2: The Friends Phase

10 users, all from my CPE classes. Main feedback: "It works but looks like shit." Fair. Also: "Can you add more templates?" and "The PDF breaks my name if it has an accent."

Week 3-4: The Reddit Phase

Posted in r/EngineeringStudents. Got roasted for the UI, praised for the concept. 50 signups in 24 hours. Server (my laptop) crashed during my algorithms class. Professor was not amused by the ngrok notifications.

Week 5-6: The Reality Check

100+ users, and the feedback was consistent: great idea, execution needs work. People wanted AI writing assistance, ATS scoring, multiple formats. I was still running this on localhost.

The turning point came when a user messaged me at 2 AM (I was up coding anyway):

"Hey, your tool helped me get an interview at Microsoft. The resume scored 82 on their ATS according to my recruiter friend. But dude, your formatting is broken. Half my experience section got cut off because of some weird parsing issue. Fix this and you've got something real."

That message changed everything.

The Pivot That Saved Everything

Here's what I learned after 100 users: fancy features don't matter if the core product is broken. And our core was broken—resumes looked different every time they were parsed by different ATS systems.

The problem? I was letting users create resumes with any format they wanted. Custom fonts, creative layouts, fancy graphics. The ATS systems hated it. Parse rates were maybe 60% on a good day.

The Controversial Decision

I made a decision that pissed off half my users: standardized formats only. No more creative freedom. No more custom designs. Just 5 templates that I personally tested against 20 different ATS systems.

What We Lost:

  • Design flexibility
  • Creative expression
  • 50% of existing users who wanted "pretty" resumes

What We Gained:

  • 99% ATS parse rate
  • Consistent scoring across all systems
  • Users actually getting interviews
  • My first paying customer

The standardized format wasn't just about compatibility. It forced users to focus on content over design. No more spending hours picking fonts. No more creative layouts that ATS couldn't read. Just clean, professional resumes that worked.

The Technical Implementation:

I rebuilt the entire PDF generation system in one brutal weekend (thanks, Red Bull). Instead of letting users freestyle, I created a rigid component system:

  • Fixed margins (0.5 inches all around)
  • Standard fonts only (Arial, Calibri, Times New Roman)
  • No graphics, no columns, no tables
  • Strict section ordering that ATS expects
  • Every element tagged with proper metadata

Users complained for exactly one week. Then the success stories started rolling in. Parse rates jumped to 99%. Interview rates tripled. And that's when Sarah became my first paying customer.

First Dollar on the Internet

November 15, 2024, 2:34 PM. I was sitting in my Compiler Design class, half-listening to a lecture about LALR parsing, when the Stripe notification popped up on my phone:

💰 You just got paid $19.00

Sarah M. purchased RezumAI Pro Monthly

I literally gasped out loud. The professor stopped mid-sentence. Twenty students turned to look at me. I mumbled something about a family emergency and ran out of class.

Sarah was a business major I'd never met. She found RezumAI through a Reddit comment I'd left weeks ago and forgot about. Her email came an hour later:

"Hey! Just subscribed to Pro. I've been using the free version for two weeks and already got three interviews. The ATS scorer is genius. Worth every penny.

Quick question—can you add a cover letter generator? I'll literally pay extra for that.

Also, you should charge more. $19 is too cheap for something that actually works."

I called my mom. I called my roommate. I probably would've called my high school teacher if I had his number. Someone on the internet—a complete stranger—had given me money for something I built.

The Floodgates Open

Sarah's payment was validation, but what happened next was insane. She posted about RezumAI in her business school Slack. Within 48 hours:

  • 12 more Pro subscriptions ($348 MRR)
  • 200+ new free users
  • My first feature request list that would take months to build

I spent that weekend adding the cover letter generator Sarah requested. Shipped it Sunday night at 3 AM, right before my Digital Systems homework was due. She upgraded to Lifetime the next day.

What I'd Do Differently

Looking back, there's so much I'd change. But that's the point—you don't know what you don't know until you ship.

1. Start with payments from day one

I waited 6 weeks to add Stripe. Should've been week 1. Even if nobody pays, having that "Pro" button makes it feel real.

2. Standardize the format immediately

I wasted weeks letting people create "creative" resumes. The standardized format should've been the only option from the start.

3. Talk to users more

I built features I thought were cool instead of what users actually needed. Every hour spent on calls saves 10 hours of wrong development.

4. Use proper infrastructure

Running production on ngrok from my laptop was stupid. Vercel + Firebase would've taken 2 hours to set up and saved me dozens of crashes.

5. Don't overthink the name

I spent two weeks deciding between Kolab and RezumAI. Nobody cares about your clever name. They care if your product works.

The Reality of Building While Studying

Let me be real about what "building a startup in college" actually looks like:

My Typical Day (Fall 2024):

  • 6:00 AM: Wake up, check overnight user feedback, fix critical bugs
  • 8:00 AM: Data Structures class (pretend to take notes, actually writing code)
  • 10:00 AM: Digital Design lab (speed-run the assignment)
  • 12:00 PM: Lunch = customer support emails
  • 2:00 PM: Thermodynamics (completely lost, thinking about features)
  • 4:00 PM: Actually focus on homework for 2 hours
  • 6:00 PM: Dinner with friends (pitch RezumAI to anyone who'll listen)
  • 8:00 PM - 2:00 AM: Real development time
  • 2:00 AM: Remember I have homework due at 8 AM

It's not sustainable. I know that. But when users message you at midnight saying your product helped them land their dream job, the exhaustion feels worth it.

Where We Are Now

As I write this (August 2025), RezumAI has:

  • Hundreds of active users
  • 89% average ATS compatibility score
  • Real revenue (enough to cover servers and Red Bull)
  • Feature requests I won't finish until 2026
  • A founder who still has no idea what he's doing

But more importantly, it's helping real people get real jobs. Jake (remember him from the beginning?) landed a role at Apple. Sarah's working at a startup in SF. Dozens of users have messaged me about offers they got using RezumAI-optimized resumes.

That's the addiction. Not the revenue, not the metrics—the impact. Knowing that something you built in your dorm room is changing people's lives.

Lessons for Student Founders

If you're sitting in a dorm room right now with an idea, here's what I wish someone had told me:

The Student Advantage Is Real:

  • People want to help students. Use this shamelessly.
  • Your classmates are free beta testers who give honest feedback
  • You have nothing to lose. No mortgage, no kids, no real responsibilities
  • University resources are free. WiFi, mentors, potential co-founders
  • Being naive is a superpower. You don't know what's "impossible"

Ship embarrassing code. My first version was terrible. But it was better than the perfect version that never ships.

Charge money immediately. Free users will waste your time. Paying users will make you better.

Your grades will suffer. Accept it. You're not dropping out, but you're not getting a 4.0 either.

Use AI aggressively. I use Cursor for coding, ChatGPT for content, Gemini for the product. This is the advantage young builders have—we're not attached to old ways.

Start now. Not next semester. Not after graduation. Now. Tonight. Open your laptop and write bad code that solves a real problem.

The Next Chapter

I'm writing this between studying for finals and pushing a new feature. RezumAI isn't a unicorn. It's not going to make me a millionaire (probably). But it's mine, and it works, and people pay for it.

The plan? Keep building. Keep listening to users. Graduate (hopefully). Maybe raise funding, maybe stay bootstrapped. I genuinely don't know, and that's terrifying and exciting.

What I do know is this: a year ago, I was just another CPE student struggling through algorithms. Today, I run a real product with real customers. If I can do it while taking 18 units and maintaining (most of) my sanity, so can you.

The barrier to entry has never been lower. The tools have never been better. The only thing stopping you is the fear of shipping something imperfect.

Ship it anyway.

P.S. To Jake:

Thanks for having a terrible resume. Your 47 rejections turned into hundreds of people getting jobs. Also, you owe me dinner at that expensive place in downtown SLO. You can afford it now with your Apple salary.