In this video I want to give you kind of a road
map of how to get into the IT world, because if you're watching this video you are most probably
thinking about starting your career in IT. Well, the tech industry is currently one of
the hottest industries for the job market, so it's completely logical that so many people are
thinking about changing careers to tech or getting into Tech just after graduating from school or
college. And it's true that tech industry offers lots of career opportunities, but when you are at
the very beginning of your journey it can be very overwhelming too. It is a broad industry with so
many options, so many IT fields and professions. There is so much to learn and often you don't
even know where to start. It's also hard to know which IT field you will be interested in and will
eventually choose, before actually trying things out and seeing for yourself what you enjoy doing
the most. You may even have self-doubt thinking that it's too late to switch careers or there's
so much to learn you can never catch up with the people, who have been in tech since early age. And
I understand all these concerns, the self-doubt, the time pressure, insecure not knowing where and
how to start etc. And that's why with this video I want to kind of show you various career path
in tech and give you some general guidance for how to get started. And for every IT field, we
will see whether it's an entry-level profession, what they actually do and what are some of their
job responsibilities as well as what skills you need to have to get into that specific field and
some of the technologies you need to learn for it. First of all, I want to start by saying that
it's never too late to get into IT. I myself transitioned from my marketing and business
studies and had nothing to do with IT before not even an IT subject at school or college and
switching my career to tech was probably one of the best decisions of my life! This field is
becoming more popular every year and it comes with so many benefits and opportunities for
people working in this field. Plus it's an interesting exciting and fulfilling field to be
in no matter which specialization you choose. So let's see what are actually some of
the most popular IT professions today, that will be even more demanded in the future,
so what options you have for IT jobs that you may want to specialize in. Of course there are many
different statistics and rankings out there and many names for the similar jobs, but there are
several professions that definitely stand out, which have become the most popular. The popular
and demanded jobs in IT are usually paid very high, so many of those rankings are also
based on salary and career growth statistics. Based on several rankings, the most demanded
and popular IT fields that have been growing in popularity even more over the years are:
software engineering, DevOps engineering, cloud engineering, cyber security or security
engineering, data engineering or generally data related professions and machine learning
engineering. And these top fields will actually be even more demanded in the future. So
there is a lot of growth and future potential in each one of those fields. So most of you will
probably want to get into one of those fields, but many of you as I said may not know right now
what you want to choose exactly, maybe because they all sound equally exciting for you or equally
overwhelming so you have no idea which one will be a better choice or which one will be the most
interesting one for you, which is absolutely okay, because that's exactly what I want to help
you with in this video so let's get into it! First of all, it's absolutely fine to try out
multiple things to see what you like the most. In fact, it's a really good idea, because you
have so many opportunities, so many options, so you want to take advantage of that and find the
one that fits you the best. However, you need to approach this with some structure, just randomly
learning things here and there in the hope to make sense of many things at once or even worse trying
to learn multiple of those fields at once is not a good strategy. It will make your learning journey
difficult and it will surely make it longer as well and you won't properly find out what field
you like the most. So let me help you structure your learning process by laying out the map that
shows you all these professions individually and the learning path to those as well as any overlaps
and common knowledge between them. Let's start with the broadest and the most widely least spread
IT field, which is software engineering. I believe it's also the easiest entry point into IT and
where most people actually start their IT careers and that's how I started as well. A software
developer or software engineer is someone, who develops any kind of software applications.
This can be a web application a mobile or a desktop application, whenever you think of any
software, whether it's on your computer the mobile phone in your smart TV. So for example, Amazon,
Netflix and all these applications you use on your smart TV. These are all software. Or think
about smart cars, again these are applications for navigation and some other controls of
the car. You have smart homes, software in production machines and robots. So these are
all software developed by software engineers. But software engineer is a very broad term itself
and covers many subfields and you can actually specialize in any of those subfields since they
are each their own separate professions. For example, you can become a "frontend developer",
which is basically developing the front of the application, the part that the users see in their
browser or their phone screen or TV screen. You can become a "backend developer" and develop
the backend part of the application, the part that connects to the database, saves and updates
user data, processes data and so on. Or you can become a "full stack developer". They're basically
people, who can develop both frontend and backend parts of the application. Then you also have
categorizations like "web developer", which is basically developing web applications that you see
in a computer or laptop browser. You have mobile app developers, which are developing applications
for Android or iOS. You may be an "IoT developer", which is "Internet of Things", like software in
your car for your TV the smart home, the smart lock systems for hotels etc. And you can even
specialize in a specific technology or programming language or even a framework. So you may choose to
become a "Java developer" a "JavaScript developer" or maybe a "React developer". You can specialize
in Android development for mobile applications. You can become a "Python developer". So these are
all separate career paths, because each of these is already such a big area and field on its own.
So you can go deeper into a chosen technology or area or you can go broader and become a full
stack engineer as I mentioned. And both have their values. You need experts in one specific
area, but you also need people, who have a good overview and knowledge of many things on a higher
level and that's really a personal preference, whether you are a generalist or a specialist, so
you can decide what you like more. I am personally a generalist. I like knowing many things and
how they fit together and integrate together and knowing things on a high level, rather than
deepening my knowledge in one specific area, but as I said that's a really personal preference.
However, no matter which of these professions or subfields you choose, you have a pretty similar
entry point for all of those. You have to first understand basics of software development and
programming. For example you take any programming language and learn the basics of programming with
that language. Things like variables, functions, data types and so on, because these concepts are
actually the same for every programming language, no matter whether it's mobile, web, frontend or
backend development. I usually suggest JavaScript as the entry point language, if you want to
get into any kind of software development, because it can be used in frontend and backend
and even in mobile application development, plus it's easy to learn compared to Java for
example. Once you get the basics right, the second step will be to actually start developing simple
example projects to really understand how software is written from scratch. The complete setup of
frontend and backend, whether it's a web or mobile application, because that's how you really learn
the concepts behind software development. I'm a big fan of learning anything with an example
project, rather than by book or watching some tutorials passively. This way you're not learning
just a specific language and what features they have, you are learning how to develop an actual
application that is usable. So depending on what you want to specialize in, if it's web development
you can learn HTML and CSS on top of JavaScript and start creating a little bit more complex web
applications with a database connection. If you want to go into mobile development you can choose
one of the languages for mobile development and practice using that language. Every language has
its advantages and disadvantages. Some of them are cooler, some of them are more widely used, but
the important thing is that you learn the concepts first, because you can always learn the syntax
or you can even Google the syntax, if you need to. If you're not sure, which language you want
to choose, always go for the most popular one, because it increases your chances to get a job
with that language and it has a large community behind it and it has to be popular for a reason.
So as I said, instead of learning features and syntax of a language just one by one, take an
example project either from web or think of your own project and develop that. You will
learn way more in that process of doing it, but it has to be simple so you don't get stuck and
overwhelmed in the process. And here's the thing, if you are thinking: "what if I make the wrong
choice and start with the wrong thing and find out that I don't like it at all?" Well, if you
start with backend web development for example and after months of learning that, you realize
it's not really for you and you like mobile app development better, that knowledge is not wasted.
You aren't starting from scratch. That knowledge that you gained will help you switch to another
area, plus you had a chance to find out what you like and what you didn't like. In fact, that isn't
wasted even if you decide you want to go into a completely different area like data engineering
or cloud engineering or DevOps. And I want to say that, the fields in software engineering are
usually the entry-level tech professions. So it's relatively easy to get started in IT this way and
later you can always transition to another tech area. And as I said your knowledge will never be
wasted, because lots of concepts are related and interconnected in different areas of IT. Your
programming skills will be useful even if you go to machine learning or DevOps engineering.
Important thing here is not to do everything at once, as long as you build your knowledge
in tech step by step, like one area at a time, one programming language and technology at a time
and stick to that for at least six months or so and then move on to the next thing you should be
fine. Just don't rush from one thing to another, trying to absorb everything at once, which I know
many of you are probably thinking to do. And if you do want to start with this path, I actually
have a mini bootcamp for learning everything you need to know for web development specifically,
full stack development with frontend, backend, database connection plus even more the complete
software development and release life cycle. And my goal was exactly to make people's entry in
IT easier and remove that fear of tackling this scary thing of getting into tech, by making things
simpler and easier. Plus with actual real projects to make it fun and engaging. Just a shameless plug
here for our IT beginners course. So if you want to know more about that you can see the video,
where I explain exactly what you learn there in detail. Now as I said, you can use knowledge
in software development in other IT fields and software development is actually the best stepping
stone to transition to our next most popular IT role called "DevOps engineering". So DevOps field
is rising in popularity year by year, it is the field that I personally found extremely exciting
and some years ago from being a senior software engineer transitioned to DevOps and if you know
my videos, you also know that my whole channel, courses and educational programs are all about
DevOps, but very important to note here that DevOps is not really an entry-level IT profession.
It is a bit more advanced, which means you need to already have some engineering know-how in order to
transition into DevOps, but what is DevOps anyway? DevOps is all about automating the processes in
the software development and release life cycle, which means logically enough that you need to
understand those processes and the whole life cycle first so you know what you're automating.
So DevOps is a more complex and difficult field, which I do not recommend to start in if you
have zero IT background, but if you build up your knowledge step by step and you find it
as interesting as I do, it can be an extremely rewarding profession. It is a highly demanded and
also highly paid IT profession, because there is actually a big shortage of these professionals,
probably way more than for software engineers. If you want to know more about DevOps and what type
of person it is for and what skills you need to become a DevOps engineer, I actually recommend
you watch my videos from my "DevOps as a career" playlist, where I explain all of that in detail.
So after watching them you will know exactly "nope DevOps is definitely not for me" or "yes that's
exactly what I want to do"! So make sure to check them out, I will also link all the videos that I
mentioned here down in the description as well. Before we move on to the next profession though,
I want to mention that lots of people transition to DevOps not only from software development
background but also from systems administration or test automation or network engineering role
and various other roles actually. I would say IT professions that are becoming less demanded
or less interesting are moving towards DevOps engineering, because it is the new hot thing and
if you don't already know about our famous DevOps bootcamp. Two years ago we actually created the
complete educational program to teach people all the necessary tools and concepts to become a
DevOps engineer. We have educated more than 2 500 students with this bootcamp so far, but as
I said the DevOps bootcamp is for people with some level of IT experience or IT pre-knowledge.
And that's why we created the IT Beginners mini bootcamp to help people with the zero background
learn the fundamentals first they need to, to even get started into DevOps. So I created this
course actually as a prerequisite for the DevOps Bootcamp. So if after watching the "DevOps as a
career" videos you decide you want to get into DevOps, then these two educational programs will
be the perfectly laid out path for you to get there in the most efficient easy and fast way. But
if you decided DevOps sounds like it's definitely not for you, then you can consider one of the IT
professions I'm going to talk about next in this video. So let's continue! The next IT field,
which is actually pretty related to DevOps is cloud engineering. Very simply explained, a
cloud engineer basically builds and maintains infrastructure in the cloud. As many companies
move from managing their own infrastructure to using cloud platforms, Cloud Engineers are
becoming increasingly demanded. Cloud engineering is also an entry-level profession. If you have
some basic systems administration experience, then this will be probably the easiest IT
field to transition into, but if you're a complete IT beginner, you can actually start
your IT journey directly here as well. So how do you start in cloud engineering? Well in cloud
engineering, there are actually two most popular cloud platforms out there, which are Amazon's AWS
and Microsoft's Azure. Both of them have various certifications, which you can take to help you
get a job as a cloud engineer for that specific cloud platform. So if you want to get started
in this, choose one of those cloud platforms and start learning for their basic entry-level
certifications and basically specialize in that cloud platform. I personally suggest choosing AWS,
because it is currently the biggest and most used cloud platform. A good way to start here will be
using AWS certification programs. AWS has multiple certifications from basic cloud practitioner to
more advanced certifications. So obviously start with the basic AWS cloud practitioner certificate
and start learning and preparing for that. This will give you knowledge in all important AWS
services, but more importantly in the main concepts of cloud engineering in general. And
remember I said, when you learn one programming language, learning another programming language
actually becomes way easier because you already learned many of the common underlying concepts.
The same way if you at some point decide to go for Azure after learning AWS or you find a dream job
at a dream company, who uses Google Cloud platform instead, you can learn them way easier, because
you already have learned one Cloud platform and the basics of cloud with that platform. In fact
learning two cloud platforms will be a major asset, because you now have a good comparison
between them. So the best starting point will be getting the cloud practitioner certificate
from AWS to get you the first job in this field. Now I want to mention here that DevOps and Cloud
often fall into the same category and often they get mixed up. However even though they have
some overlaps, they are actually two very different fields and I plan to create a separate
video for DevOps engineer versus Cloud engineer describing in detail what are the common tasks and
responsibilities, those overlaps as well as what actually differentiates them. So you understand
exactly the difference between these two fields. So be sure to subscribe and activate the
notification bell, if you don't want to miss that. Now cloud, DevOps and software engineering fields
have one thing in common, they all need security. When you build a cloud infrastructure you need
to secure it, when you program an application you need to make sure it doesn't have any security
loopholes that hackers may use to hack into your systems, when you build DevOps processes which
actually affects your application, your cloud infrastructure and many different systems, again
you have even more security responsibilities to make sure you don't expose passwords and secret
keys to your systems etc. This means software developers, cloud engineers and DevOps engineers
they all have to know about security. But security is an extremely large field and it affects every
piece and step of the software development and release life cycle and you have security in
other IT fields as well. So we actually have a separate dedicated profession for IT security
engineers who specialize in all things security. As a security professional you know security
tools and technologies that help you scan and identify security issues at different levels as
well as help fix them and also validate that other engineers have secured their systems properly.
There are even external security companies who provide services to other companies to secure
their systems. For example they try to hack into their systems and see where the systems of the
company are vulnerable, because if they can hack into them, actual hackers can also do that. So as
a security engineer you identify those vulnerable points and advise the company how to secure them.
Also security as I said is on multiple levels, every system, every software, that companies
using or developing needs to be secured: so the infrastructure, the application platform, the
frontend, the backhand, database, the application itself. So security engineers usually have a wider
cross knowledge of security on all those levels and can plan a general strategy of securing
the complete setup using various technologies for automating security checks and security
testing and so on. And it goes without saying that security engineers have extreme value to the
companies, because security breach is the worst scenario for any big known company. Cyber attacks
are becoming more and more sophisticated and for applications, who have millions or hundreds of
millions of users and the user data obviously the impact of the attack is huge, when data of so
many users is compromised or even think about your online banking application. Obviously you don't
want them to have any security issues in their system, right? For this reason there is usually a
tremendous demand for security engineers in many industries and it's definitely going to become
even more important in the future. So if you want to go on this challenging but very exciting
path you need to first understand the concepts of what you are securing. So this is also not really
an entry-level IT position, you definitely need some pre-knowledge in one of the IT fields like
network engineering, cloud engineering, software development etc. And on top of that you'll have to
learn many security concepts and tools in order to develop this general security strategies. When
talking about security, passwords and secret data is a critical part, so before moving on I
want to give a shout out to Passbolt who made this video possible. Passbolt is an open source
password manager for agile and DevOps teams and is built for collaboration. With Passbolt you can
securely generate, store, manage and monitor your team's credentials. The security model is built on
strong foundations such as: end-to-end encryption, granular access rights, it is audited regularly
by third party entities, but you can actually audit it yourself, because it's 100% open
source, even the commercial version of it. And for maximum privacy you can deploy your own
self-hosted Passbolt server within minutes from a Raspberry Pi to a high availability setup and then
put it behind your firewall. And also important to note that Passbolt does not require an internet
connection to be functional. So be sure to check them out, the link is in the video description.
Now let's move on with the next career path. One of the hottest IT jobs, which are more in demand
than ever are data related jobs. Now why is that? When we have software that millions and billions
of people use daily, those users produce loads of data, right? Think about social media, the
posts and media we create and upload every minute or every second. Think about search data
generated when millions of people search daily, GPS data from Google Maps or other applications
that track your location, when you buy groceries at the supermarket, when you buy stuff online.
So basically the user behavior data. All of this is data that we humans produce daily
through our digital footprint. But apart from this human generated data there is also massive
amounts of device generated data, such as cars, IoT systems through sensors, production machines,
robots, logistics data, shipment tracking. So even more data than humans generate is coming from
these sources. With all this, the data has grown dramatically in the last years. In fact worlds
90% of the data was actually generated in the last two years. As some sources mentioned, we
generate so much data, every single day that if it were written down in form of books and we
could pile those books on top of each other, we would have enough to build a bridge to the moon
and back. And because of the sheer volume of this data, we also call it "Big Data". So that's where
the term comes from. Data has become a precious asset of any organization, because it helps them
understand things better. Like make predictions, political campaigns are driven by data, like
you have polls and online searches etc. Many companies use data to optimize their processes, to
save time and money in those processes. However, just raw data has no value to the company. Imagine
these are massive amounts of data in raw form, generated in different formats and from different
sources. It's really difficult for humans to make sense of data in this form. It only has value
once the data is processed, cleaned, analyzed and visualized. So it's easy to consume for us humans
and big data related professionals are exactly the ones, who use tools to turn these massive
amounts of data into usable and extremely valuable information for companies. And companies can
then use these visualized data to make decisions, make future predictions, cost optimizations and so
on. And there are various data related professions with different tasks and responsibilities such as
data analysts, data scientists and data engineer. So let's see comparisons between them. "Data
analyst" is basically the entry-level profession if you want to get into this field and is the
easiest to start with. As the name suggests, data analysts analyze and interpret data to
extract meaningful information from it. So they need to basically make sense of the data,
like identify any patterns. The main skills they need to have are knowledge of math and statistics
and various tools that help them in data analytics and data visualization. But in addition to the
technical skills, data analysts must actually have a good business and product understanding. So
they analyze the data with the goal to make good decisions for the business and product development
and then communicate those decisions to people, who actually need them like, product owners,
business decision makers in the company. However, data analysts work with already processed and
prepared data. So the raw data needs to be collected from multiple sources with different
formats and be processed first to be usable for the data analysts. And this is something that
"data engineers" do. Data engineers need knowledge of databases and programming to do their job and
data engineers actually build something called "data pipelines" to collect, store and process
the data. So you can start into data engineering by learning a programming language like Python
and its data processing frameworks and libraries, learning databases and query language like SQL
for example and big data specific frameworks like Apache Hadoop, which is a popular framework
that allows you to store and work with massive amounts of data. And the third one I mentioned is
a "data scientist", which is usually the highest paid profession among these three. Now interesting
to mention that companies often use data analysts and data scientists job titles interchangeably.
Now they are two different professions, but there are definitely some overlaps between those two.
And one of the overlaps is that you need to have advanced math and statistics knowledge here as
well. So generally contrary to the popular belief, you don't need any math or statistics knowledge
for software development and definitely not for DevOps or cloud engineering, but in data science
or data analytics you will be working with math and statistics a lot. This means if you want
to get started in one of those fields, the first thing you need to learn is statistics and
the programming languages for statistics like R or Python. However in addition to statistics, data
scientists usually require more advanced technical skills than data analysts and that's where the
main difference between those two professions lie. So data scientists are usually more
experienced engineers, who can create advanced machine learning models for example and algorithms
to make future predictions. Which leads us to the next and final hottest IT profession called a
"Machine Learning Engineer", which actually is yet another big data related profession. We said
that data analysts and data scientists use data to analyze trends and identify patterns and make
some decisions and predictions based on the data. So data can be used by humans to make data-driven
decisions, but data can also be used by machines by programs, so that clean processed data that
data engineers prepare can be fed into machines, so they can learn from them and they can use them
for different tasks. And that's where machine learning actually comes in. Now what is machine
learning exactly and why do machines need data, what do they do with it? In software development
we write programs and instruct them to do something. In machine learning, machines can
perform a task without being explicitly programmed to do so. How do they do that? They learn how
to perform that task from large amounts of data using algorithms, which are also called machine
learning algorithms. So machine learning is about computers being able to think and act without
being explicitly told or programmed to do so and there are two main parts of this process.
First one is writing the machine learning algorithms so that machines can use them to
learn and the second part is feeding large sets of processed data into those algorithms,
so basically using the data to train the model. Again there are some overlaps between data
scientists and machine learning engineers that you will encounter, they both need strong math
and statistics skills to work with data, however, while data scientists focus on making sense of
the data, visualizing and presenting it better, machine learning focuses on using the data for
machines to learn to carry out certain tasks. So entry into machine learning engineering is
actually pretty similar to data science. You need to start by learning a programming language
like Python, which has powerful machine learning frameworks and statistics, which is a
very important part of machine learning engineering. Now you probably already noticed
that in all those fields I actually mentioned Python programming language and that's because
Python is a general purpose language. You can use it in every single one of those areas,
however that does not mean that you need the same Python knowledge in each field. Using Python
for web development is completely different from using Python for DevOps automation or machine
learning and that's an important difference. So first you learn the Python core with its syntax
and general programming concepts and then you learn the specific libraries and frameworks
for each IT field on top of that Python core. So you have completely different frameworks
and libraries for web development and machine learning and DevOps automation, which you need to
learn for that specific field. So you basically learn different parts of Python for each field and
that's an important thing to differentiate. Python language just happens to have popular frameworks
for all those fields and their use cases, but of course the Python core is the same everywhere
and if you want to learn Python core, like syntax and programming concepts of Python, you
can definitely check our free course on Python, which I will link right here. So we've covered
a bunch of career options in IT and I tried to categorize them so you have a better overview and
comparison between them. So hopefully something stood out for you where you think: "well that
field sounds pretty interesting to me so I'd like to get into that field". Now of course when
you know approximately which direction you want to go and what you want to start learning, the
next question becomes:"where and how do you learn this?" Do you get a college degree in computer
science? Do you take an online course? Do you join a data science bootcamp or a coding bootcamp or
our DevOps bootcamp? Well, I personally started my informatics studies at a technical university, but
I was using mostly online resources for my studies like YouTube videos and some coding websites.
And as soon as I got an internship as a software developer in my second semester, I actually quit
my studies and used my work to learn by doing, because at work I was actually learning way more
practical stuff that I actually needed for my job than at the university. But learning at work
wasn't always easy, so I continued learning new things from YouTube videos and blog articles and
online courses. I was often all over the place trying to learn anything and everything that I
stumbled upon. I didn't really have a roadmap that I could follow, but it was still useful in
some way. So I still think that online resources are one of the best ways to learn, especially
in IT field, but as I said having some kind of road map and structure definitely makes the
learning journey easier, because you don't just learn things randomly, but you learn things in a
certain order without being distracted by massive amounts of information. So whatever field you
want to choose: Go find a clear roadmap for that profession. There are various articles and videos
about those roadmaps and then just try to follow that roadmap. And of course if you decide for
DevOps, as I mentioned we have a complete roadmap for that, even if you're starting off without
any IT background, so you don't need to do the research, put together a learning course and find
good resources. We have done that whole work for you. You just follow along and learn by doing
and if you know my videos I create the content with the goal of giving practical actual usable
knowledge with easy explanations. I love helping people learn easily without getting frustrated and
being overwhelmed. So generally as you see, you have various options, choose an entry-level career
based on what you want to do later and you can build on top of that. And again no knowledge is
wasted in IT, everything is still interconnected, so if you start in software development and
later want to do DevOps or machine learning or cloud engineering you can still benefit from
that knowledge and won't be starting from scratch in that field. So if you don't know yet where
you want to end up you can start with any one of those, maybe the easiest one and you can always
progress in any other direction later. I hope I was able to help you make these important decision
for your future, you definitely made the right decision by choosing IT in general. With that,
all the best and see you in the next video! :)