- Published on
My Wildest Freelance Project and What It Taught Me
- Authors
- Name
- Godbless Nyagawa (Njox)
- @njox16
Table of Contents
Introduction
This article dives into the absolute wildest ride I had during my first freelance gig. From the moment I said "yes" to the chaos that followed — I’m laying it all out. The good, the bad, and the straight-up WTF moments. If you're just getting started in freelancing, please read this. I wish someone told me half of this before I said yes.
Backstory
Alright, let me set the stage.
You know how when people around you find out you can code, they start throwing you "opportunities"? Yeah. That’s what happened. A friend — let's call him X — hit me up and was like, "Bro, there’s this company that needs a website. You in?" I was like, “Say less.”
We had a casual convo, nothing too deep. He said he’d get back to me when things were locked in. A month later — boom — he calls. The project is happening.
We go meet the company boss in person. He’s chill, seemed to know what he wanted. We discussed the basics, even talked about payment. I was hyped. We shook on it, metaphorically and literally. But here's where I messed up: I didn’t ask for detailed features. I didn’t push for a written contract. Rookie mistake #1. I was just happy to have a gig.
Red Flags
Miscommunications
From the jump, the communication was sus. I’d message the boss asking for content or feedback and get ghosted for days. Then out of nowhere, he’d come back demanding changes like I was just chilling waiting on him 24/7.
Worse? He kept changing what he wanted. One day it was a simple company website. Next week, he’s asking for login portals, dashboards, product listings — like bro, are we building Amazon now?
Increasing Scope
Ah yes, the classic scope creep.
I quoted the project based on what he initially told me — basic pages, contact form, etc. Suddenly, we’re talking about adding e-commerce features.
Did he want to pay more for these extras? Nah.
He hit me with the “But it’s just a small addition, right?” line so many times I could scream.
Every time I pushed back, he’d guilt trip me: “You’re young, you need experience,” or “This is good exposure for your portfolio.” Like sir, exposure doesn’t pay bills.
Lessons
Here’s what this chaos taught me — the hard way.
Get a Contract. Always.
I don’t care if it’s your best friend, your cousin, or your lecturer. No contract = no protection. Outline deliverables, timelines, payment milestones, and what happens if they try to throw in surprise features.Charge by scope, not vibes.
If the client changes the scope, that’s a new discussion. Learn to say, “Sure, I can add that — here's the revised quote.”Red flags don’t turn green.
If you see early signs of miscommunication, pushback on contracts, or delays in payment — run. Don’t wait around hoping it’ll magically get better. It won’t.Don’t underprice yourself.
Just because it’s your first gig doesn’t mean you should accept trash rates. Value your time. If they won’t pay, someone else will.You’re a developer, not a magician.
Some clients think we can code entire systems overnight. Set expectations early. Don’t be afraid to say no.
Outro
Looking back, I’m honestly glad I went through it. Yeah, it was chaotic and lowkey traumatic — but it gave me real-world lessons no tutorial ever could.
Now when I take on projects, I move different. I’m not just a “coder,” I’m a professional. And every mess-up taught me how to level up.
If you’re a fellow dev just starting out: don’t be scared to mess up. Just don’t make the same mistake twice.