2020 Technology Year In Review

2020 Technology Year In Review
Post Author: Aaron Decker | Image by JayMantri from Pixabay
Date published: January 01, 2021

I think just about everyone wants to get past 2020 and all of the terrible things that happened with the pandemic. Luckily for you, this post is strictly about technology trends in software development.

Working Remotely

One of the big things that happened with tech jobs this year is that almost everyone is now remote-first and software jobs are pretty much assumed to be remote.

In 2018 I started working remotely fulltime, and at that time not many other people I knew were doing that. True, many software engineers were working remote but it didn't feel like it was the majority. However, I'd say about half of the other developers I knew at least worked remote 1 day a week. And this accelerated quickly in 2019. I knew more and more people working remote only (not just part time).

Now, in 2020 after the pandemic nearly everyone in tech is working remotely. Twitter said all of it's employees can work from home forever. Facebook told everyone to stay remote until summer 2021.

Some of the messages I get from recruiters say something like "you can work from anywhere but must be willing to travel to HQ for XYZ". Sometimes they mention you may be asked to return to the office at some undefined point in the future. But almost everything is now assumed to be remote from what I can tell. If it is not, I see people explicitly calling this out in the initial message.

This is going to be a super interesting trend to watch to see if it reverses at all when vaccines are widely available and offices open back up. There seems to be some evidence long term remote work drops productivity. Some companies will see this and call everyone back in, others will not. It might be that each organize deals with this differently and others see a net productivity boost and cost savings.

I believe a minority of software developers are going to want to be in the office (workers like it- see this PwC survey), but personally I like going to an office a couple of days a week and getting to see people face to face. After working remote for about 3 years I'm actually wanting to be in an office more (ideally 2-3 days a week?).

React is still king!

On the frontend React still appears to be king. React 17 was released with no new major features, meant to be a "stepping stone" release. New upcoming features are more support for server side rendering and concurrent mode which should help speed up some interfaces on react websites.

I expect a lot of people to embrace these features for the performance benefits and engineers that are good with these new features will be in demand. The new server side rendering feature in particular looks complex but could have huge page load speed benefits for e.g. major online retailers using react. Amazon has done studies showing page load speed hugely impacts revenue so this is a big requested feature!

Previously folks were using frameworks such as Gatsby or Next.js to handle server side rendering (this site is written in Gatsby), which by the way are both still growing in popularity as well!

Python continues to grow in popularity

I'm seeing a lot of Python jobs showing up more and more. According to one language popularity tracker Python searches grew significantly in 2020 and it is still the most searched language. Java on the other hand decreased quite a bit!

Python is useful as a backend programming language meaning that it is run on the server and is the code running business logic and interacting with databases.

Django is the popular web framework used with python, but there are also smaller frameworks such as Flask. I also see Python being used a lot in Serverless framework projects running on AWS Lambda.

And finally one of the biggest drivers of growth for python is it's use in machine learning and data science projects. There are many modules such as Pandas and SciPy that facilitate this and drive it's adoption.

As a side note I've been doing Python on and off for a long time, I learned it during my undergrad research working with Dr. Tsang on my chemistry degree. I started working on a Python project this year and like using Pandas but quickly became frustrated with it due to performance issues and lack of static typing. I'm much more exited about Kotlin for server side work (another language growing in popularity).

Looking at Stack Overflow Surveys (2020 and past)

Let's check out the most popular technology section of the stack overflow developer surveys:

Notice how Python jumped up the list from 7 in 2018 to 4th in 2020. Java has been pretty stable, and as always client-side web technologies (JavaScript, HTML and CSS) remain ubiquitous.

Surprisingly PHP still ranks very high (Wordpress is powered by PHP and it just won't die).

TypeScript (statically typed JavaScript) and Go have both shot up the list. I expect those trends to continue. Anecdotally everyone seems to be using TypeScript now and it provides big advantages for working on JavaScript/ Node/ React projects with large teams.

Summary

  • Remote Work is here to stay! But let's see what happens with the reopening this year.
  • Python grows in popularity
  • React still king
  • TypeScript continues to grow
  • The old guard of Java and PHP are still going strong

Want updates?

Want new posts about tech topics emailed to you? Sign up to the list below 👇

Also, if you are interested in learning technical topics through a video course specifically created for recruiters, don't forget to check out the courses I offer.

The main course "How to Speak Software Engineering Jargon for Recruiters" is specifically designed to help tech recruiters get up to speed fast on technical topics.


Written By Aaron Decker

I'm currently a co-founder and head of engineering at a venture backed startup called Bounty. I tend to think of myself as a backend engineer that can work up and down the stack in Typescript. Previously, I have worked as a Tech Lead and hired teams, and as a Senior Software Engineer at multiple fortune 500 companies building large products. I also did a brief stint teaching programming courses as an Adjunct Instructor at a local community college, which taught me a lot about breaking down complex things into understandable chunks.