The Freelancer.com logo — an origami hummingbird beside the wordmark — over the tagline "Think whenever, work wherever", on blue

The freelance years: real clients, and a lesson school never taught me


Freelancing, from 2013 to 2015, was the first time nobody else’s name was attached to the work — no principal assigning it, no institution funding it, no program structuring it. No one was vouching for me. If a client trusted the work, it was because of the work itself, not because something else stood behind it.

Finding clients, two different ways

I worked both ends of it: bidding for projects on Freelancer.com, competing with people I’d never see, entirely on a portfolio and a proposal — and local clients, found the older way, through word of mouth. The two were almost opposite experiences. On Freelancer.com you were a line item in a list of quotes, judged on price and past reviews before anyone read a word you wrote. Locally, you were a person someone’s cousin recommended, and the first meeting mattered more than the portfolio did.

What the work actually was

It wasn’t one kind of project. Some of it was commercial websites — a WordPress theme built for a studio, a site for a small brand, the kind of work that’s mostly about understanding what a business actually needs to show people, not just building a page. Some of it was heavier: management software for real operations, complex enough to need actual design before any code — I built one for a nightclub’s day-to-day bookings and administration, in a Node.js framework called Feathers, which at the time was still a fairly deliberate choice. I also built and shipped small standalone tools, like a QR code generator site people could use directly, no client relationship required at all.

The lesson that mattered more than any of it

If I had to pick one thing this period taught me that four years of a CS degree hadn’t: technical skill gets you in the room, but it’s not what keeps a client relationship working. Understanding what someone actually needs — which is very often not exactly what they first ask for — and managing expectations honestly when reality doesn’t match the timeline or the budget, matters just as much as the code itself. Nobody grades that. You just find out the hard way when a project that was technically fine still left a client unhappy, or a project that had real problems still ended well because you communicated clearly through it.

That’s the part no classroom ever tested, and the part freelancing forced on me directly.