The accidental programmer

Ekky Armandi
#python #upwork #freelance #photoshop #matlab
The accidental programmer

Six years ago, I graduated with an Industrial Engineering background and a clear picture of the career I wanted: drafting, CAD, product design—work that felt concrete.

Then 2020 arrived. COVID turned plans into question marks. Layoffs became normal news. Hiring slowed down. I stayed home refreshing job boards until it felt less like hope and more like a habit.

The days blurred. With no direction, it was easy to spend hours on distractions that didn’t really rest me—videos, scrolling, “just one more.”

One night, I stumbled on an article with a headline loud enough to cut through the noise, Data Scientist: The Sexiest Job of the 21st Century. It sounded like an escape hatch—something modern, something in demand, something you could learn from a small desk at home.

So I started studying like it was my new full-time job: O’Reilly books, YouTube tutorials, Udemy courses, notes everywhere.

And then I hit the wall people don’t mention when they talk about “learning online”: following steps is not the same as understanding. I didn’t really get Kaggle. “Feature engineering” felt like a secret language. After a few months, my motivation collapsed.

Freelance is learning by doing

I realized I wasn’t incapable. I was learning in a vacuum.

Statistics felt abstract because I didn’t have a real reason to care yet. What did stick were the concrete parts: programming logic, data structures, and the satisfaction of making a script run from start to finish.

Still, I needed income.

One day, YouTube served me a new idea: freelancing on Upwork. I signed up with the same mindset as everything else that year—try it, see what happens.

Two weeks later, I landed my first job: redesigning a Fall Guys character face in Photoshop for $25. It wasn’t glamorous, but it was real. Two hours of work, money in my account, and a new feeling: the internet wasn’t only for studying—it could be for earning.

Recreate Simple Image in Photoshop

That small win changed how I thought. Instead of chasing one “perfect” job title, I started offering whatever I could deliver: product design using Solidworks, algorithm work using Matlab, and small design tasks.

Then I noticed something while browsing gigs: Python was everywhere. Matlab wasn’t.

So I made a practical decision. I didn’t try to become a “Python expert” overnight. I tried to become useful as fast as possible.

I applied for small Python jobs and learned from the silence. Back in 2021, Upwork connects were cheaper, so I could send more proposals and iterate quickly.

Eventually, one client replied—a student outsourcing weekly Python homework: $5 per task, every week, for months.

It sounds small, but it became my missing classroom. Homework has deadlines. It forces you to explain, not just copy. It makes you practice the boring parts until they become familiar.

I learned Python the way many people learn best: by doing.

Web development discovery

Once I could finish tasks without panic, I started reaching higher. I took on bigger gigs and filled the gaps at night with whatever free resources I could find—documentation, blog posts, and endless troubleshooting threads. “I’ll figure it out”, I said.

Then a client asked for something beyond scripts: a web app.

What surprised me most was how the path created itself. I didn’t sit down one day and decide, “I will be a full-stack developer.” I just kept solving the next problem in front of me.

Final thought

I didn’t follow a roadmap. I followed momentum.

The work I could do led to work I couldn’t do yet. The projects I accepted forced me to learn. The learning opened better projects. And somewhere between small gigs and late-night debugging, I became something I never planned to be.

If there’s a moral here: don’t wait until you feel “ready.” Keep moving. Let real problems teach you what tutorials can’t.

Thanks for reading ✌️

Back to Blog

Connect with me