As we move through life, we end up acquiring various skills to help us improve our careers. Some we focus on & develop deliberately, while others seem to be acquired almost by accident.

All these skills have helped to get us to the place we are today, but not all skills are created equally. There are certain types of skills that can easily transition to a new employer or project, while others are completely unable to make the switch with us. Because of this, skills in the first category are much more valuable for us to gain & refine than those in the latter group.

I have taken to calling these easily transferable skills “liquid skills” because they can be easily taken from place to place or from project to project.

What Are Liquid Skills?

Liquid skills are skills that are easy to transfer between jobs, projects, or companies. These skills are either generic enough or in demand enough that you can use them on something new immediately.

Here are some examples:

  • Formal Education - Degrees are the defacto evidence of knowledge in most of the world. What you learn in school is typically considered universally true.
  • Established Programming Languages - Knowing a programming language that is used widely by many people & for many projects will ensure you are never short on opportunities to switch it up, should the need arise.
  • Design Patterns - Being able to identify generic patterns & having known solutions that are applicable across various programming languages means not reinventing the wheel every time the situation presents itself.
  • Writing & Communication - You are always going to have to know how to communicate your thoughts to others. Mastering this will benefit everything you do in life.

Non-liquid skills

Some skills are not and cannot be liquid. Often, they are too specialized or specific to be applied out of the context of a specific project or company.

  • Company Specific Knowledge - Don't be pigeonholed into being the only person who knows how part of your company works. Yes, it will make you feel important, but you will find yourself trapped working on a specific area of the business instead of learning new things.
  • Specialized Third Party Tools - Being an expert in a tool is great, until that tool is no longer used. Now you have a lot of great information about something that is completely irrelevant.
  • Niche Programming Languages/Libraries - You are going to have less opportunities as an expert Rust developer than a below average Java dev.
On Company Specific Knowledge

Someone must know how the legacy app works, there is no avoiding that. But it is worth it to avoid becoming the go to person for it. Being the legacy app expert allows everyone else in the company to avoid knowing that information because they can just ask you instead of finding out for themselves. As a result, you will eventually be the only person who knows anything about the app, and after enough time, the one person who works on it.  

There is value in being a domain expert, but the value lies in being a domain expert for a domain that is transferable & competitive, not falling into the position because no one else cares about it.

Why Are Liquid Skills Important?

The average software developer changes jobs every 3 years. We live in a world where changing jobs & projects is a way of life. In order to continue building upon past skills, it is important that those skills are not left behind when you decide to make a change.

Here are some guidelines to help identify which skills you should prioritize developing;

  • Who does the skill benefit? If the answer isn't an immediate "me", you should reconsider being the person with that skill.
  • Does this skill have a built-in expiration date? Does your new employer really need you to learn Silverlight development? You knowing Silverlight would benefit both you & your employer, but for you this skill has an expiration date. The technology is known to be out of date & is being abandoned. Stay away.
  • Would I put this on my resume? The ultimate litmus test is knowing if another, random employer would be excited to add this skill to their team. If the answer is "no", it probably isn't a useful skill to have.

Keeping yourself liquid

We have focused a lot on what skills are inherently liquid, but there are also ways to make a skill liquid that may not be otherwise.

Do work in public

Doing work in public is a great way to keep yourself & your skills transferable. There are several ways to keep your work in public: have a blog, start a portfolio on Dribbble or GitHub.

  • Are you a QA engineer who has been learning JavaScript to do some automation? Put some examples on GitHub.
  • Are you a front-end developer who has been more focused on design lately? Post it to Dribbble.

You can tell everyone you meet that you have been doing these things, but no one is going to just take your word for it. Without a public presence, you are going to have to prove you know these things over & over again.

This blog is my public portfolio. I post my product designs & professional opinions so they are always available.  It only serves one function: to get my thoughts into the public space so that I can point to it and say, "I know things" as the need arises.

Have proof of your skills

The unfortunate part of job titles is they rarely tell the full story of the work we do & the skills we have.

Maybe you have been performing the role of Architect for your current employer, but your title is still "Software Engineer". The best way to prove to the outside world that you know what you are talking about when it comes to architecture is to get a certification.

Certifications go a long way to prove that you know what you are talking about & the people who made the thing agree with you. Certifications prove that you deeply understand a specific practice or technology.


Now that your skills are liquid you are not only ready & able to make a move, but you will also be thought of as someone who can make a move.

Any manager can tell you the struggles of the employee who wants to make a move, but is too integral to their team to let go. Having Liquid Skills ensures that you are able to be put on another team & provide an impact, while also not having your old team so dependent on you that they grind to a stop.