Keeping your knowledge up-to-date as a freelancer

'Knowledge is key' by Valentin on Unsplash

As a freelance developer you are responsible for keeping your knowledge up-to-date. This is completely different compared to working as an employee. In that case you would probably have to write a Personal Development Plan (PDP), which would contain areas of knowledge that you want to improve the upcoming year. It's not only about hard technical skills but also about soft skills.

Make a plan

What is stopping me as a freelance developer to write a plan as well? Yes I know, I don't have a manager that's asking me to write a plan. And also true, a lot of employees detest having to write a PDP. I even recall a freelance developer feeling relieved of having to write a development plan after he became a freelancer. But to be honest, when you're working as a freelancer, you actually are your own manager. So you could ask yourself to write a PDP. It's not the only thing that a freelancer developer has to do which is naturally out of his comfort zone. Doing sales and taxes aren't in my comfort zone either.

But why would we make a plan?

Did you ever go traveling without a plan? I don't think anybody goes traveling without a basic plan. You have to know where you want to go and when you want to go. Don't forget we have to inform our customers upfront to make sure it also fits their schedule. We have to know a bit about the weather we can expect to make sure we pack the right things. We might even go a bit further with the planning and look what kind of excursions can be done on which day of the holiday. You don't want to miss that Aurora Borealis because you didn't know it could only be seen on the first day of your holiday.

So we make a plan. It will help us when we are kind of feeling lost in life, it will be our guidance. With a plan it will be like you're in the drivers seat instead of being carried by whichever transport is available for you. Of course when having a plan it doesn't always have to completely end up the way planned. But, like Hannibal Smith says: "I love it when a plan comes together".

From what I've seen it helps you unconsciously work on things you put on your plan. Maybe you can go a little bit further and try to grasp "The Secret" by Rhonda Byrne.

Going conferences

My plan for example says: "I want to go to a tech related conference every year to update my knowledge and stay on top of what's happening in the industry". Does this say I already know which conference I will go to a year from now? Not at all, but when you're talking to people who want to go to a specific conference, I will investigate if it's going to fit my own expectations. That's how ended up going to the SDD Conference in London this year.

Choose your projects carefully

It's not only about how you gather your knowledge. I know a couple of freelance developers that are working for the same customer on the same technology for more than 5 years. That's probably really comfortable! No need to think about the next new shiny technology. You're probably able to stick with that customer for another 3 to 5 years, so no stress about finding a new assignment.

But wait, I'm not advocating to find a project at which you can stick for 8 years doing the same technology. I actually think it's not wise at all. What happens if your assignment suddenly ends, two months from now?

I understand that if you have some specialized knowledge, you want to exhaust it. Years ago I was one of the few Silverlight developers in The Netherlands. I could make some good money, but things suddenly changed: browser plugins weren't a thing any more. So I pivoted away to focus on a different technology. I could have stayed in the Silverlight world for some more time, but I'm sure it would have been more difficult to proof my knowledge in general if my specialty was of a not only dead but a buried technology.

Sometimes it's not about the content of the project to determine if it's time for something different. Not being a personal match with the organization could a reason to cause lack of motivation. Of course this doesn't happen in a day or two, but if you feel unmotivated for some time this could be sign to pivot.

Soft skills should not be forgotten

A lot of times I hear non-technical people talk about the fact that developers often miss communication skills. The chance is high you've heard something similar as well. However this doesn't necessarily mean it's accepted. Specially if you are a freelance software engineer, standing out by your technical skill might be hard, but if you combine excellent hard skills with above standard soft skills your chance of being chosen for a project increases.

Communication isn't the only soft skill. Have you thought about adaptability, empathy or accountability? Those are all things that, once improved, will benefit you a lot.

While working on hard skills is easy for a lot of developers, because quite often it's also their hobby. The soft skills are something else. One of the ways I improve my soft skills is by reading or listening to books that would possibly help me.

A book I've recently listened to is Deep Work: Rules for Focused Success in a Distracted World by Cal Newport (affiliate link) . This book helped me get a bit more focused while working. Making me get distracted less often. I will discuss more books in a future blogpost. However by having an Audible subscription I get 1 token each month, which I use to get a book focused on soft skills. Not too much of a plan, but some continuous passive learning.

After reviewing the podcasts I'm subscribed to, I unsubscribed to a lot of technical podcasts that didn't taught me anything new in last month. Instead I'm now subscribed to the following podcasts (they are in Dutch.

Convinced it's time to write a plan?

I don't know about you, but for me the above alone are enough reasons to make at least some outline plan. Think a bit about the future and how you would want to interact with the world of 2024.

Don't forget the words from Terence McKenna: "If you don't have a plan, you become part of somebody else's plan."