The tech world is ever-changing, and it seems like there’s something new to learn every day. The last few years have been marked by rapid change, and it’s hard for developers to keep their feet. 2020 is no exception: if the first few months are any indication, it’s going to be a big one. Don’t worry though, we’ve got you covered; here are the core skills you need to know to be a developer in 2020.
AI and Machine Learning
TensorFlow has undergone explosive growth in use since 2016, and with good reason: AI has finally reached a viability point where it’s accessible to significantly more developers, and that means it’s poised to take over. In ten years, software that doesn’t incorporate some sort of AI element is going to look like a horse-drawn cart, and in the immediate future, it’s critical that you upskill into it if you want to have a viable career. Last year, funds managed by AI consisted of 35% of the US stock market, and that number is only going to grow.
Though AI development is going on in a huge number of languages and frameworks, there’s a clear popular winner that you should be looking into. Which leads us onto our next point:
Python and Data Science
We all know and love Python, and thanks to the surge in AI development and data science, it’s having a bit of a renaissance. Python traditionally hasn’t had a lot of life outside of campuses and data processing, but data processing has now become a huge part of modern business, and the number of jobs calling for Python has skyrocketed.
As AI becomes more and more important, Python is going to continue its upward surge. It was always a great language that had a lot of utility, but now it’s becoming exceptionally useful to big business and that means you’re going to see a surge in money and jobs.
This includes Django and Flask, Python’s two biggest frameworks. Django is extremely stable and has everything ready to go out of the box, while Flask is smaller and better-optimized for microservices. Django has traditionally been the most important player in the field, but Flask has overtaken it in the last few years, in large part due to the explosion of Docker, containerization, and microservice architecture. Flask is less powerful but more flexible, and that’s what developers want right now.
It also might be worth looking into Python with R. R is a popular language for statistical computing, and can be combined with Python via the pyRserve library setting up an RPC connection gateway or the rpy2 interface, which runs R in an embedded Python process.
Database Management Systems
As has always been the case, database systems are an important tool to have in your belt as a developer. Even if you’re not backend focused, you should be comfortable with getting your hands dirty. For NoSQL you should be looking at MongDB, Redis, and Apache Cassandra. For relational databases, MySQL is on the list of course, but you should also be looking at MariaDB, as well as PostgreSQL. It’s also worth being familiar with SQLite, which is very popular for mobile and embedded applications.
With the massive amount of data warehoused these days with the hope of it being useful later, it’s a worthwhile skill to know how to do something with it. Take a look at data management/processing/analytics systems like Apache Hadoop and Spark.
Kubernetes and Helm
First, there was Docker, and the developers did look at it and say it was good. Time passed, and the container clusters became more complex, and the developers cried out, and thus did Kubernetes come down and save them. More time passed, and their clusters became terrifying webs that proved impossible to navigate, and that’s how we came to Helm.
Helm is to Kubernetes as Kubernetes was to Docker, and while it hasn’t fully taken over the world of containers yet, expect to see it become more important as the year (and the decade) drags on.
JS’s popularity is mostly because it is extremely flexible. It’s so ingrained into the tech space at this point that a good JS developer could learn nothing else and still be employed in 2030. It’s hardly new at this point, it’s just so dominant that you’d be foolish to not at least learn the basics.
The Cloud Is Also Still Here
Remember when all anybody could talk about was the future on the cloud? For once, they were sort of right. It happened, and it mostly centralised around a few major platforms: AWS is obviously the biggest player here, but Google Cloud and MS Azure are also crucial market players and it’s worth your side to get good with them.
Which isn’t to say you shouldn’t be keeping your ear to the ground for new competitors, just that—if you want to know you’re working with something stable and applicable to a lot of gigs—then looking to AWS and its peers is a solid plan.
OpenCV Might Be About To Get Big
Python’s on the rise! Data science is big business! AI and Machine learning are happening right now! Guess what that means? Intel’s venerable old computer vision library is getting a shot in the arm. Image processing is a core part of machine learning, and OpenCV is one the most accessible and well-established tool-sets out there.
If you’re noticing a general trend in this article, it’s that the next big thing isn’t new: it’s old, but given life by developments in AI. If you’re trying to think more broadly than this article, then that’s where you want to be looking: which old tech is going to come back thanks to AI?
Robotic Process Automation is on the Horizon
RPA is when simple, repetitive job tasks like data entry are handed over to AI. This isn’t quite there yet, but it’s getting close, and if you’re future-minded then it’s good to start learning now. There’s a lot of interest and capital flowing this way—if this technology can be deployed and run reliably, then there’s a huge amount of money in it.
Right now, it’s still a little finicky: it works perfectly in perfect use-cases, but if something changes then it has a habit of breaking and requiring more effort than just fixing the original software would’ve taken. So-called “Cognitive RPA” is somewhere on the horizon and has a lot more flexibility built-in, but we’re not going to start seeing it in production for another 3–4 years minimum, and right now it’s more of a CIO pipe dream.
Still, it’s coming, and it’s complex enough that you can’t just sit down with it for a week and come up competent. This is a specific application of a number of skills we’ve discussed above: without Python (and Flask), without OpenCV and ML algorithms and Tensorflow, jumping into this is going to be near-impossible. This is one of the big things modern AI is working towards, and something to keep in mind while building up your skills.
The Future Is Here
A lot of the skills developers need to start learning in 2020 were the realm of science-fiction as little as 10 years ago. Most notably, AI is coming and it’s coming fast—the last few years have been huge, but they’re nothing compared to what’s coming. AI is going to change everything, and you need to be prepared for it. What better time to start than now?