Top 5 new skills You Have to Learn It:


PYTHON:

Here are the top five skills that I think you should get in 2021. Number one is Python. If you don't know Python you're gonna be at a disadvantage. It doesn't matter if you're a network engineer. Doesn't matter if you're a ethical hacker, doesn't matter if you work in data science it doesn't matter if you're a programmer you need to know Python today it really opens up doors for you.


LINUX:

Number two, you need to know Linux. The world runs on Linux. If you work in the Cloud if you work in Internet of Things devices or IoT if you work in networking, it doesn't matter where you are. Linux runs a lot of the world so you need to know Linux. I don't know how many times I need to say it but you need to learn Linux you need to learn Python. Thirdly you need to know the cloud. Networking has been changing for many years, from on-premise to applications hosted in the cloud. There's a reason that Amazon are as big as they are. 


CLOUD:

Cloud technologies, AWS, Azure, Google Cloud make sure that you learn about Cloud technologies. You don't have to learn about all of them but make sure you at least have an understanding of one of those cloud technologies. So AWS or Azure or Google Cloud as an example. You need to have an understanding of networking, the world runs on networks. 


NETWORKING

Applications, doesn't matter what application you're using today. Generally today, you're gonna have a client talking to a server a cross a network. Big issues are caused because application developers write code, that works on their laptop but doesn't necessarily work in production because they make the mistake of thinking, unlimited bandwidth. The world doesn't have unlimited bandwidth networks don't have unlimited bandwidth. Your application will be affected by bandwidth issues. There is delay in a network. You can't assume that because it works on your local laptop it's gonna work in production because there is delay or latency in a network. So a good application developer is aware of how networks work. Think about it as follows, is your application gonna use TCP? Is it gonna use UDP? Why is UDP better in some cases than TCP why is TCP better than UDP? 

You need to have an understanding of basic networking. Do you understand IPv4 addressing IPv6 addressing, that stuff is really basic. Make sure that you at least have understanding of networking. Now again, which path are you taking? If you're gonna be a software developer, your focus is on writing code but you need an understanding of networking. If you're a networker, your focus is on networking but you need to have an understanding of coding. You may not code all the time but you need to know how to automate networks. You need to know how to talk to an application developer. 


API's:

And that gets me to the next big topic, APIs. The world runs on APIs today because we have applications talking to applications. And how do they communicate? through application programming interfaces We as humans use a language let's say English to communicate. Programs will use something like a REST API to send information from one application to another. So a client would talk to a server using a REST API. For instance using a GET to get information or a POST or a PUT to put information on a server. So you need to have an understanding of APIs.


Virtualization:(Bouns)

And I've put this in as a bonus you need to understand Virtualization, learn technologies like virtual machines. VMware as an example has been in the game for many, many years with software such as ESXi used in many enterprises around the world. You have a physical server with virtual machines running on it, but the world has also moved on and now we have containers. So you need to have an understanding of containers versus virtual machines.

So think of technologies such as Docker and Kubernetes. This is the way the world is going. Follow the trends, look at where the world is going. I think if you focus your time on these five areas it will help you in life. This is where the world is going. So make sure you learn Python, make sure you learn Linux make sure you have an understanding of the cloud. Again, depends where you want to focus your time. 

You may wanna be a cloud engineer, so you become really good at AWS but you can't be a good cloud engineer if you don't understand networking, just because you put an application into the cloud doesn't mean that you can ignore networking. You actually have to understand networking because you have to understand concepts such as, load balancing, you have to understand subnetting you have to understand firewalls. You can't have one without the other. So if you wanna put applications in the cloud and you wanna manage those applications you need to have an understanding of networking. 

Even if you running applications in Docker containers you need some kinda networking because how are your client applications gonna talk to your server applications? Notice how all of these technologies work together. So learn networking if you are gonna be a developer as an example, you may just have a little bit of understanding of networking. If you're a network engineer you may have a strong focus on networking and a smaller focus on application development. Make sure you learn APIs and make sure that you learn virtualization