One year ago I quit my job to be able to work on a more flexible basis and started doing freelance programming & project management work. Here's what I learned:
Don't be afraid.
I was afraid making this step. "How does healthcare as a freelancer work?", "What if I can't get enough customers?", "How should I handle all this unknown tax stuff?" - all these and many more thoughts circled in my head.
But in the end it wasn't so hard. It was kind of easy actually. Being a freelancer is a very common thing so there were easy standard procedures for switching my healthcare (as easy as one phone call) or checking online what kind of tax pitfalls I should avoid.
I'm now very happy that I took this step, because often in my head everything feels complicated but once I do it, I see that it's nothing to be afraid of and that I can easily do it again (if I maybe in the future decide to take a job again).
It's different when you get paid by the hour.
When I had a job getting work done and getting paid were two independent things. I worked 8 hours every day and got paid by the end of the month. I had productive days and I had unproductive days - but that was the way it was and it didn't really change anything.
When I started as a freelancer I had the feeling that when I get paid for an hour of work, every minute of this hour needs to be the best productive work that I can do. I used a tool called clockify for tracking my time and I stopped it every time I went to the bathroom for 2 minutes and even when my work didn't feel 100% productive because I thought that people shouldn't pay for that because it's not the very best I can do. That way a day of work was only around 4 hours billable work but I was still very exhausted. Over the few weeks this pressure of doing 100% productive work every minute of the day stressed me out a lot. And I realised that it's not possible to keep this up.
The problem wasn't only the time tracking but also the calculation of the estimated time I would need for a project or task. When I told my customers how long I it would take for me to finish the task, I calculated that for a best case scenario where I make nearly no (programming) mistakes and being in my best mental shape. Finishing the work in this unrealistic time frame put more pressure on me.
My solution now is that I know that not every hour I put into the work is the most productive hour of the day. As a freelancer you get paid for the time you invest in a project on a more flexible basis than a normal employee. But if you work 8 hours a day for a project, even if it things that day didn't work out as you hoped they would, you should get paid these 8 hours of work.
I also changed my estimates for the amount of time I need for tasks and no longer calculate in them hours but in days - with half a day as the smallest possible estimate for small tasks.
I still track my time by the hour and try to be as concentrated as possible during that time to get the best results for my clients but also in a pace that feels healthy for me and that I can keep for longer period of time without burning out.
The flexibility I hoped for
I started working as a freelancer because I was interested in working on different projects where I can still keep learning new things. That I can more flexibly jump from one project or company to another without limiting myself to one company / employer and having the time to start new projects I was interested in on my own. And that's nearly exactly what I got 😊
I now have three customers with interesting projects where I continuously work when they need me. Sometimes they don't need my work for a month but then there is a lot to do again for the next month or sometimes it's just a constant level of a few tasks a week. And that way I can schedule this work into my week the way it works for me and if I want to block a day a week for my own projects for the next months, I can do this, too.
It's still doing other peoples work
But there is still one downside. As much as I love this flexibility, switching between doing your own projects and freelance work you realise that freelance work is still a lot like a normal job - you do work that other people want to get done and get paid for that.
Because of that I know blocked two days a week every week for my own projects working towards building more income streams and aiming for being able to pay my rent from my own projects one day in the future but that's a story for another post ;-)