WebDevChallenges Logo
WebDevChallenges

How I became a freelance web developer

Updated June 5, 21
In this post I tell you the story of how I became a freelance web developer in germany

I write this post because I think freelancing in web development is a good career and has a lot of advantages over traditional permanent positions.

If you can manage to have enough customers to be occupied full time, working as a freelancer should make you a significant amount more money than permanent positions. Also being able to work on your own schedule is a huge plus in my book. It enables you to take time off whenever you feel you need that without an employer insisting in you being present.

A lot of employers advertise their positions with terms like “work-life-balance” and other nice sounding words but I made the experience that they are used to lure developers into their positions and once you signed the contract, their promises are no longer relevant. I made this experience multiple times but I’m sure there are nice companies to work for in permanent positions too.

How I became a web developer

I live in germany, took 12 years of school and always planned to study an IT related subject on university. It was always a dream and I idolized studying on university for some reason. Maybe because it was something I was looking forward to because I didn’t like school that much.

Anyways, once the time came and school ended I did not want to work while studying because I’m a lazy boy and neither did I want to take a loan. I decided to apply for apprenticeships as a software engineer. I actually did not find an employer willing to invest time into training me. So I applied for another apprenticeship path in system administration and found a nice company.

During my apprenticeship which started in 2014 I learned a lot of basic sysadmin stuff that is very relevant to software engineers like setting up and securing linux servers for hosting web applications. I also was always very interested in programming. In the school part of the apprenticeship we learned Java which intrigued me.

I spent time in my spare time programming some pretty useless applications, connecting to a mysql database from vanilla Java etc. Later I started to learn basic web development technologies like HTML, CSS (+Bootstrap) and JavaScript (+jQuery) with freeCodeCamp. I also dug into Node.js because the idea of not needing to learn a whole new language for writing backend code was appealing to me.

So towards the end of my apprenticeship I put together all the things I learned about Linux hosting, Node.js (MVC), HTML, CSS, Bootstrap and JavaScript and built a website which I used to apply to web development positions. I ordered an EC2 Instance from AWS which was free for their lowest tier and installed CentOS 7 on there. My Node.js application got served with pm2 and reverse proxied through NGINX which also handled SSL. The certificate was obtained through LetsEncrypt for free.

I applied to positions towards the end of 2016 and found a web agency in munich where I began to work for them as a web developer from the beginning of 2017.

My first permanent position

An apprenticeship does not pay very well but you obviously are supposed to do a lot of learning and less earning in that period. So the first year paid 750€ montly, the second one 850€ monthly and the third year 950€ monthly. Usual pay in the area I did my apprenticeship in and with the level of experience after an apprenticeship is around 2500€ monthly. My first position was at 3000€ monthly which was more than I expected. The position was in Munich which is one of the reasons why the pay was a little better than in rural areas.

These numbers are all before taxes and social security charges.

To sum up my first position, I learned a lot about basic web development first. Did a project with jQuery which got more and more complicated over time. I regretted the decision to use jQuery very soon but I didn’t know any better. Later on I dove into learning Angular and developing Single Page Applications (SPAs). So I specialized more and more in frontend development. Sadly I did not learn a lot of backend development even though that is something I always have been interested in alot.

My second permanent position

Through the projects on my first job, I gathered a lot of knowledge in Angular because I was the sole frontend developer responsible for the whole frontend code of our projects. The first company I worked at had financial problems which had multiple reasons and I want to go deeper into one of them in a later post. It was clear that this company would not make it and would go bankrupt sooner or later.

So towards the end I got contacted by the CEO of another company on a social media for work which was popular in germany back then called XING. They searched for a frontend developer specialized in Angular which I was a good fit for so they hired me in Januar 2019. The pay was 4300€ monthly. I learned new stuff there, worked on developing an in-house web application in the real estate business.

They previously had a freelance developer build their Angular application which I continued to develop. He was still working on some parts and basically transferred the project to me. This guy was very knowledgeable in this field but I was not far behind and I was also able to show him some stuff like state management that he did not have experience with yet.

My entry to freelancing

I was already wondering if I too could be a freelance developer in the future. I worked for that company for 6 months. Ending the employment was mainly my decision and the reason behind this is a topic I want to discuss in a further post aswell.

Anyways, I started to work on a personal project which I dumped a lot of time into. Working both on the backend and on the frontend was very fun to me and I learned a lot. Even though I did not pursue this project to have a real userbase I think the time spent was not wasted there.

Two months after quitting at my previous company, the freelance developer I worked there together with contacted me. He said he is working on a different project as a freelancer and has some work for me if I’m interested. I saw this as a huge opportunity and I’m very grateful that he contacted me.

So I said that I’m interested, registrated my business and started to work on this project. That was in Q3 2019 so I have been a freelance developer for almost two years now and I really enjoy it way more than working in a permanent position.

My initial hourly rate was 65€ which we bumped up to 70€ after the first month. I think the rate is not very high but it’s not too low either. He knew how I worked and what I was capable of doing so we agreed to this rate which was fair in my opinion.

That project lasted until the beginning of 2020. I immediately found another freelance gig afterwards and I want to create a separate post about finding work as a freelance developer soon.

Feel free to reach out to me if you have any questions.