Oluwaseyi

Oluwaseyi (Ekpere) Oyewunmi

--:-- · ...

I'm that i'm, a tinkerer, over thinker, and the lover of my girlfriend. This site is a personal playground for me, and hopefully over time, a place that i can maintain my thoughts.

Software engineer. I build things in O(sometimes).

← all writing

What fifteen freelance projects taught me before my first real job

Jul 8, 2026#career#lagos#notes

Between 2019 and 2021, before anyone would hire me full-time, I built things for whoever would pay in Lagos. A voting platform for a student election. A quiz system. Software to run a gym. Automation for people who were doing something tedious by hand and had heard that computers could do it instead. Fifteen-odd projects, every one delivered on time, mostly because I was too scared of the alternative.

I don't have most of that code anymore. Some of it should stay lost. But I think about those two years more than any course I took, so here's what stuck.

Scope is the product

Every project started as a paragraph in a chat. Every paragraph contained about four projects. The first few times, I said yes to all of it, and then spent nights building features nobody had asked for in that paragraph but had implied, and the thing shipped late and half-finished.

The fix wasn't technical. It was learning to write the paragraph back to them as a numbered list, with prices next to the lines, and letting them cross things out. That list was the actual product. The code was just how I fulfilled it. I still do this. It's most of what "senior" means.

Deploy on day one, on the worst server you can find

Working software on a cheap, flaky host beats perfect software on localhost, every time, because the client can see it. Something they can click changes the whole conversation. It also surfaces every deployment problem on day one instead of the night before the deadline, which in Lagos might also be the night the power goes and your hotspot dies.

This habit never left. Everything on this site was live before it was finished. The status light on the homepage worked for weeks before it looked good.

Write the document you'd want if you disappeared

Half the panicked messages I got months after a project were "how do I restart it" or "the password isn't working." I started shipping a one-page README with every project: how to run it, where the data lives, who to call if I'm unreachable. It made me look more professional than I was, and it stopped my phone ringing. Later I realised this is just operations, and that most of the industry is bad at it too.

The hard part is never the code

I want to say that with a straight face, as someone who loves the code. The hard part was the message at eleven at night. The scope conversation. The invoice that took six weeks. Explaining to someone why the thing they saw on another site would triple the price. Knowing which requests to push back on and which to just do.

None of that was in the tutorials. All of it is still the job.

Say no sometimes

The projects I'm least proud of are the ones I took because I needed the money and knew, from the first call, that it would go badly. It went badly. The projects I learned the most from were the ones where I had the nerve to say "I don't think I'm the right person for this," and then, occasionally, was talked into it anyway on better terms.


I'm a backend and DevOps engineer now, with the kind of job title I was trying to fake in 2019. The systems are bigger. The bills have more zeros. But the day-to-day is still: write the list, ship something clickable early, leave a note for whoever comes after you, and answer the eleven o'clock message like a person.