- Nomadic Freelancer
- Posts
- My Story As A Freelance Software Developer
My Story As A Freelance Software Developer
The Ups and Downs
This newsletter issue is brought to you by:
🎯 WorkSwift: Complete Projects Instead of Missed Deadlines
Join the Early Access for FREE to help us test & improve the software and you’ll get 50% off on any membership (Freelancer, Studio, or Agency) for life.
Reply back with “early access“ and I’ll reach out soon.
This all began with a desire to make money from home when I was still in high school. I didn’t know if it was possible or not, but I’ve stumbled upon various stories from people who said they were doing exactly that.
My journey down this rabbit hole led me to learn about affiliate marketing, running a blog, and selling digital products, but even with all the information available out there, I didn’t know which way was truly viable for someone who was not really into any of that.
Some were making money from home by selling physical products, but I wasn’t interested in that because the idea was to have the whole operation happen behind the computer without any additional logistics requirements. Dropshipping (before it was so popular) also didn’t interest me, so I kept on searching.
After further digging, I found out about freelance marketplaces where you could sell your own skills and I saw that making websites was in pretty high demand.
By that point, I’d made several simple websites with a back-end and database, so I convinced myself it could be a good source of income and created a profile on 3 platforms: Elance, oDesk, and Freelancer.
Next step was learning everything I found on how to become a freelancer and how to use these 3 platforms (along with completing my profile information properly), so as soon as my confidence level shot up pretty high, I began by writing proposals based on the templates I learned about. It would definitely take only a few of them to win the first gig, right? Not at all.
My First Gig
I had to send proposals every day for a full year to find a way to stand out and win my first project because I was using the wrong approach. As someone who’s never done this before, it wasn’t obvious to me then. Now I would do it differently if I had to start over.
The first project I won was on Elance. Around that time, oDesk became Upwork, but Elance was still functioning separately though it was merged soon after.
This merger worried me a bit because after gaining my first 5-star review on Elance, I very quickly won another gig, but my Upwork account (former oDesk account) was still empty even with the same strategy I used for winning my first project on Elance.
But when I saw my work history also being migrated to Upwork, I felt a slight sense of relief, thinking I had a chance to make it there as well since the types of clients I was winning on Elance were also transferred to Upwork, so I decided to have a positive outlook on that situation.
Upwork Transition
And it turned out I was worrying in vain.
I was able to go from my first gig on Elance at $3/h to $20/h jobs on Upwork in a matter of a few months. They weren’t big projects, but there were a bunch of them available, so naturally, I took more than I could handle and got slapped with a negative review.
The bad review I received was a splash of cold water on my face and a permanent stain on my profile page. I knew I either needed to take on less work or get a team to help out. I figured I could earn extra money by distributing work along with doing it myself, so the search for other freelance software developers began with full force.
I went through a good amount of helpers over the next few months and became really tired to keep on working on short-term projects while also taking care of others, so I thought to myself that if I could get $15/h net of Upwork fees and work the equivalent of a full-time schedule, I would make around $2,500/month, which was actually a significant amount and not too far from what I was earning at $20/h by managing multiple people.
In other words, I wanted to reduce the risk for a while and stabilize this one-person business.
Back then in my home country, the average monthly salary was $250. Whereas I had the opportunity to earn 10 times that amount.
Sporadic to Consistent Freelancing
So in December 2015, I started working on the contract I envisioned, charging $16.67/h for 40 hours of work every week, which is exactly $15/h net of Upwork fees.
Since this was a mission accomplished, I celebrated it by investing more in my skills and workspace with the goal of earning even more money now that I was able to have consistent demand at that price.
After working for a few months and putting some money on the side, I decided to take a month-long trip to Italy where I would continue working from my laptop and tour some places nearby.
Workation
So May of 2016 was my first workation where I realized the real possibilities that working remotely offers you. It’s not just staying home, but the freedom to go anywhere as long as you have a really good internet connection and a laptop you can be productive with.
Around the time I came back home, I thought about trying to build my first startup—a different kind of freelance platform. I definitely wasn’t ready for that, but it provided a great learning experience about the wrong way of doing it, but that’s a story for another time.
I had to maintain my freelance income to cover my expenses while spending as many extra hours as I could on the startup.
Transitioning Away From Upwork
During that time, I started winning clients outside of Upwork, too, and I had the opportunity to raise my rates. Since I considered Upwork’s fee was too high for the benefits the platform gave, my focus was slowly shifting to the clients from the outside. This was a bad idea.
At some point, my PayPal account was blocked with a sizable amount in it and because in Moldova you don’t have utility bills on your name unless you own an apartment, I couldn’t pass the address verification they wanted me to do, so I had to figure out a different way to get paid, but the sad part was that I couldn’t recover the money that was blocked on PayPal.
So I thought about trying out Payoneer, especially because they’re issuing a card on your name that you can use for payments without withdrawing to a bank account.
I had actually been trying to get a card from them even while using PayPal, but it never arrived with free shipping. I requested it several times and somehow it got lost in the mail all the time.
This wasn’t a scam or anything because I had friends who got them just fine. It just didn’t work for me.
Since I really had to get it this time, I transferred a small amount to Payoneer to order delivery through DHL (paid) and this time I had finally received it. Activated it and tried a purchase at the nearby grocery store and it worked perfectly.
As such, I was able to receive my payments through Payoneer from that point on, but the money wasn’t from Upwork. I’d have set up a US company, which would accept payments through Stripe and would send ACH payments to my Payoneer account. Problem solved.
So I continued working with clients outside of Upwork, but my problems were only just starting. I had a client who simply disappeared without paying the last weekly invoice and I couldn’t find him.
Everything was fine a few weeks prior and he always paid on time. I still don’t know what happened, but the sum was pretty big because I’d also put together a team around the project. So I ended up paying everyone out of pocket without letting them know what happened.
That’s when I decided to only accept weekly payments ahead of time for the scheduled hours instead of after the fact. If we worked less, the extra hours would roll to the next week unless the client canceled with unused hours, in which case they would get that amount as refund.
That’s how I worked with a new client for the next 2 years and everybody was happy, but the project had to come to a close—the company was sold because the owner wanted to take a break and move on to his next business, which wasn’t related to software.
So I had to find a new project to work on. But first, I wanted to take a long vacation to recharge my batteries.
I didn’t even notice that I didn’t take a proper vacation since my last workation in 2016. It was already the beginning of 2021, a little before the pandemic.
Oracle
After getting ready to work again, I reached out to a colleague I worked with in the past and asked about the company he was contracting for and if they needed a Full-Stack Engineer. Turns out, there was a vacancy exactly for this position and I sent out my application.
This was right after Oracle purchased it and they needed extra hands for the migration of the system into Simphony POS. Thus, I started contracting for a Fortune 100 company.
Now that I’ve gotten back to stability, it was time to check out what was going on with my Upwork profile. I had stopped using it completely after a negative review in 2018 by an abusive client from Russia.
Normally, I only take contracts from English-speaking countries, but the price seemed alright for the amount of work that was described and after a further conversation to knock down the requirements (like I always do with my clients, which never failed me), I got to work.
When it was time to make the payment, we had disagreements and decided to ask Upwork to take a look. After analyzing everything, Upwork sided with me and released the payment. However, when closing the contract, the client decided to retaliate with a negative review because winning disputes doesn’t block this ability for client accounts.
So that negative review ruined my Job Success Score and I lost my Top Rated badge. Although I wrote a reply to that negative review, it was still right there at the top where all potential clients would see it, so I thought my Upwork profile was definitely done.
Fun fact—Upwork later fully blocked the client’s account, so I’m assuming I wasn’t the only one he tried to trick.
Rebuilding My Upwork Profile
Once I’ve gotten back to stability with Oracle, I thought about taking another chance on Upwork now that I didn’t have a JSS, so only the review would be visible, which I still considered a pretty big hurdle.
This time Upwork has made some internal changes, including replacing the 10% contract fee with a progressive rate (20% on the first $500, 10% between $501 and $10,000, then 5% for the rest of the amount). This was actually a good thing because including the hourly protection that the platform offers, it only costs a small percentage over what Stripe would charge me for payments.
It took quite a bit of applying now that my rate was $75/h, but my strategy allowed me to get over the dark spot on my profile. After working for a few months, I got my 100% Job Success Score back. Game on.
All I had to do was maintain this score over the next 16 weeks and I would get my Top Rated badge back. Though this time there was an even better one—Top Rated Plus.
The only difference in requirement was to work on a large contract, which is different for every job category, but by the time the 16 weeks have passed, I’d had already met the requirements for Top Rated Plus, so I got this one instead.
Taking care of customers truly pays off! It’s really simple, but not many people do it and you can’t ignore it if you want to earn more than $40–50/h.
So after a while, I decided to say goodbye to Oracle (you can read about it here) and decided to go back to full-time freelancing through Upwork and my personal brand, which I haven’t given much attention to.
Doubling My Rate
Soon after, I made a decision that would have seemed impossible many years ago—doubled my hourly rate to $150/h and I’m still getting contracts. I somehow thought that as a non-US profile, I wouldn’t be able to break through the $100/h ceiling, but I simply blew past it!
This rate allowed me to reach maximum productivity (what usually called a 10x Engineer) while bringing the weekly billable number of hours down to 25 instead of 40.
It’s not that complicated, but it does require a significant time investment, so if you’re an aspiring freelancer or have tried it in the past, but are thinking about giving it another go, the opportunity is still here.
I wouldn’t recommend depending 100% on a platform like Upwork, but in the beginning, you shouldn’t even worry about anything else until you’ve proven you can sell your skills well and have improved them to a high level of demand. Then once you’ve billed a good amount, start focusing on building your personal brand to win work outside of it. Even then, I would still recommend you keep your Upwork profile active just in case while continuing to grow your business outside of the platform.
In future articles, I will give you a roadmap for how to be successful on Upwork no matter what stage you are at right now, so that you could eventually hit 6-figures a year while working 5 hours a day.
That’s all for today. See you next week!