I recently tweeted some thoughts on the constant moving pace of technology:
In the past, I’ve made the mistake of wanting to learn and implement every cool new thing that came out in the world of software development. There’s constantly new tools, services, APIs, languages, and patterns that not only did I get excited about, but felt like I would need to know if I was to ever get what I needed in terms of jobs or the mythical “perfect app architecture” in my personal projects.
I’m sure there are many that feel that way right now, and the problem is that a lot of these skills just end up being useless in due time because of the constant cycle of new technologies eventually being old. You will always feel like there is something new to learn and I don’t believe doing so is productive use of your time.
While some skills change in relevance, others stay constant hence the term evergreen skills.
The most useful category of evergreen skills are known as soft skills. These are things that aren’t directly related to your role such as research, communication, and sales.
Let’s take research for example. Being able to look at different technologies and assess them in terms of viability and whether they’re worth your time to learn and implement can help prevent educational debt in yourself and technical debt in your projects.
Communication and sales go hand-in-hand, and are typically ignored by those of us who only focus on the code itself. However, there is constant communication between team members and third parties through different mediums such as email and chat. Being able to construct words together in a way that the other person becomes sold on your idea can be more beneficial to you than any of the code you might write.
Let’s not forget those direct skills involved in your day to day though. Let’s say that you’re a web developer learning the React framework. You should already know that React won’t be staying around forever, so you have to consider the investment that you’re putting in.
With any framework, keeping your code as close as possible to the underlying programming language will allow you to master your fundamentals. React makes heavy use of
The point is to maintain a set of skills that won’t change as easily as frameworks do. Those skills can also help you build more efficient apps and write more maintainable code as you will understand how everything works together.
Investing into evergreen skills can help you make better use of your educational time, so let me know what you think about soft skills and fundamental skills.
See you next Sunday, same inbox? 👋