00:00:00
let's talk about the skills you need to
00:00:01
become a web developer web development
00:00:04
is generally broken down into two areas
00:00:06
frontend development and backend
00:00:08
development and then full stack
00:00:10
development which is a combination of
00:00:11
both frontend development is all about
00:00:14
what the user sees and interacts with
00:00:16
it's the website in your browser or the
00:00:18
app on your mobile phone or tablet
00:00:20
backend development handles everything
00:00:22
behind the scenes like data processing
00:00:24
storage and logic you can start on
00:00:26
either end but if you're starting out
00:00:28
and pursuing a career in web development
00:00:31
I recommend you to start with the
00:00:32
backand because it gives you a solid
00:00:34
foundation in programming and problem
00:00:36
solving plus when you transition from
00:00:38
back end to front end you'll have a deep
00:00:40
understanding of what happens under the
00:00:42
hood in contrast if you start with the
00:00:44
front end back end looks like a mystery
00:00:46
and you'll have no idea what's really
00:00:48
happening under the hood so in this
00:00:50
video first we're going to cover the
00:00:51
skills you need to become a backend
00:00:53
developer and then we'll talk about
00:00:55
front-end development to become a
00:00:56
backend developer there are five
00:00:58
essential skills let's go over them one
00:01:00
by
00:01:03
one the first step to learning backend
00:01:05
development is to pick up a programming
00:01:07
language here we have a few options like
00:01:09
JavaScript python Ruby Java C and go
00:01:13
just to name a few now which one is the
00:01:15
best well it's almost impossible to pick
00:01:17
one language as the best or the ultimate
00:01:20
language because the choice of language
00:01:22
depends on various factors like project
00:01:24
requirements team expertise and
00:01:26
performance needs for example JavaScript
00:01:28
is used for full stack development
00:01:30
because we can use it on both the front
00:01:32
end and the back end in contrast Python
00:01:35
and Ruby are often used for rapid
00:01:37
prototyping and fast development Cycles
00:01:40
Java and C are often used in building
00:01:42
large scale Enterprise grade
00:01:44
applications they're heavily used in
00:01:46
large organizations and government
00:01:48
systems and go is used for performance
00:01:50
critical and concurrent applications now
00:01:53
the common mistake I see among my
00:01:54
students is that they try to learn many
00:01:56
of these languages hoping that this
00:01:58
would increase their job opportunities
00:02:00
but it doesn't work that way because
00:02:02
learning a language is only the first
00:02:04
step you also need to learn the
00:02:06
ecosystem of tools and libraries for
00:02:08
that language to land a job so if you're
00:02:10
starting out just stick to one language
00:02:13
whichever you like but also do a bit of
00:02:15
research and see how many job
00:02:17
opportunities are available for that
00:02:18
language where you live generally
00:02:20
speaking there are often more job
00:02:22
opportunities for python Java and
00:02:24
JavaScript but again I want you to do
00:02:26
your own research now assuming that
00:02:28
there are more job opportunities is for
00:02:30
these three languages in your town and
00:02:32
you're not sure what language to start
00:02:34
with I would recommend python because
00:02:36
it's the easiest and has a simple
00:02:38
readable syntax that's great for
00:02:40
beginners my second choice is Java
00:02:43
because it's a solid language and is
00:02:44
often taught to computer science and
00:02:46
software engineering students JavaScript
00:02:49
has a ton of weird parts and baggage
00:02:50
from the past because it wasn't
00:02:52
originally built for building backends
00:02:54
we can certainly use it to build great
00:02:56
backends and I've done that many times
00:02:58
but I still prefer Java or or C to
00:03:00
JavaScript for building backends so
00:03:03
don't overthink this pick a language and
00:03:05
dedicate 2 months to learning it if you
00:03:07
spend 3 to 5 hours every day studying
00:03:10
and coding you can learn any of these
00:03:11
languages in about 2 months now to help
00:03:14
you on this journey I've created a free
00:03:16
supplementary PDF that breaks down the
00:03:19
specific Concepts you need to learn for
00:03:21
each skill it also includes several
00:03:23
project ideas to help you practice and
00:03:26
apply what you have learned it's a great
00:03:27
resource to review your progress find
00:03:30
gaps in your knowledge and prepare for
00:03:31
interviews you can find the link in the
00:03:33
description Box by the way I have a
00:03:35
bunch of tutorials on this channel and
00:03:37
complete courses on my website if you're
00:03:39
looking for structured learning again
00:03:41
links are in the description box the
00:03:43
next thing you need to learn is a
00:03:45
version control system like git git is
00:03:47
not a programming language it's a tool
00:03:49
that we use to track changes to our code
00:03:51
and collaborate with others git and
00:03:53
GitHub which is a platform that hosts
00:03:56
git repositories are essential for every
00:03:58
developer git has a ton of features but
00:04:00
you don't need to know them all for
00:04:02
everyday use think of it like the 8020
00:04:04
rule 80% of the time you use 20% of gits
00:04:07
features so one to two weeks of practice
00:04:09
is enough to get up and running now
00:04:11
building backends often involves working
00:04:14
with data structures and implementing
00:04:16
complex algorithms this is where a lot
00:04:18
of self-taught programmers struggle
00:04:20
because they try to skip ahead and learn
00:04:22
more and more languages and tools
00:04:24
without learning the fundamentals of
00:04:26
computer science data structures and
00:04:28
algorithms are critical subjects taught
00:04:31
to computer science students and they're
00:04:33
often covered in Tech interviews
00:04:35
especially at Big tech companies like
00:04:37
apple Google and Microsoft while you can
00:04:39
skip this step and go to the next as
00:04:41
someone who has had the privilege of
00:04:43
teaching millions of people I highly
00:04:45
recommend you not overlook this step
00:04:47
otherwise you're going to feel the pain
00:04:48
later in your career so spend 1 to two
00:04:51
months studying classic computer science
00:04:54
data structures and algorithms this will
00:04:56
give you a strong foundation in
00:04:57
programming and problem solving the next
00:05:00
thing I'll recommend to learn which a
00:05:01
lot of self-taught people Miss is design
00:05:04
patterns design patterns are proven
00:05:06
solutions to Common software design
00:05:09
problems there are 23 classic design
00:05:11
patterns that were documented in this
00:05:13
classic book design patterns by the gang
00:05:15
of four many of these patterns are used
00:05:17
in web Frameworks particularly spring
00:05:20
Django and as.net core which we will
00:05:22
talk about in a few minutes so learning
00:05:24
these design patterns will give you a
00:05:26
deeper understanding of object-oriented
00:05:28
design principles
00:05:30
and how these Frameworks work under the
00:05:32
hood now I got to tell you this book is
00:05:34
pretty old and it's written in C++
00:05:37
honestly it's a difficult read because
00:05:39
many of the examples in the book are dry
00:05:41
and not quite relevant to Modern
00:05:43
software that's why I've created a very
00:05:45
handson and pragmatic course on this
00:05:47
topic where I use Java and modern
00:05:49
examples that you find in applications
00:05:51
we use every day so you can see how
00:05:53
these design patterns are used to solve
00:05:55
problems in modern applications whether
00:05:58
you want to take my course or a
00:05:59
different resource I believe if you
00:06:01
dedicate a few hours every day you can
00:06:03
have a pretty solid understanding of
00:06:05
design patterns in about 2 months the
00:06:07
next thing you need to learn is
00:06:09
understanding and designing databases
00:06:11
there are two classes of database
00:06:12
engines relational and non-relational
00:06:15
also called No SQL databases in
00:06:18
relational databases data is stored in
00:06:20
tables with rows and columns that are
00:06:22
related that's why we call them
00:06:24
relational databases these databases are
00:06:27
best for applications that require
00:06:29
complex queries and transactions like
00:06:31
banking systems and e-commerce
00:06:33
applications especially any application
00:06:35
that needs complex reporting examples of
00:06:38
relational database engines are MySQL
00:06:40
postgress SQL server and Oracle these
00:06:43
are different products that despite some
00:06:45
differences work more or less the same
00:06:47
way with all these products we retrieve
00:06:50
or store data using a language called
00:06:53
SQL some people call it SQL which is
00:06:55
short for structured query language it's
00:06:58
a simple language that looks like plain
00:07:00
English now you don't need to learn all
00:07:02
these database engines because different
00:07:04
projects and teams use different
00:07:06
database engines when you're starting
00:07:07
out you just need to learn one of them
00:07:09
and you can easily pick up others on the
00:07:11
job out of these I would recommend MySQL
00:07:14
because it's the most popular database
00:07:16
engine but you can pick any other
00:07:17
database engine that you like one month
00:07:20
is enough to learn the essence of SQL
00:07:22
and working with a relational database
00:07:24
now in no SQL databases data is stored
00:07:27
without a predefined table structure so
00:07:30
these databases are more flexible
00:07:32
they're best for applications that
00:07:34
require flexible data models and
00:07:36
real-time analytics examples include
00:07:38
mongod DB couch DB and Cassandra again
00:07:42
these are several products out there and
00:07:44
you don't have to learn all of them out
00:07:46
of these I would recommend mongodb
00:07:48
because it's the most popular and you
00:07:50
can learn it in about a month you're not
00:07:52
going to be an expert but you're going
00:07:53
to have a decent practical knowledge the
00:07:56
next thing you need to learn is a web
00:07:58
framework which depends on your
00:07:59
programming language for python you
00:08:01
should learn Jango for Java you should
00:08:03
learn spring boot for JavaScript you
00:08:06
should learn express.js for C you should
00:08:09
learn as. net core for Ruby you should
00:08:11
learn Ruby on Rails and for go you
00:08:13
should learn J all these Frameworks more
00:08:16
or less do the same thing they provide a
00:08:18
bunch of tools for building backends
00:08:20
handling tasks like routing requests and
00:08:23
response handling database interaction
00:08:25
and Security in a nutshell with these
00:08:28
Frameworks we can build and publish
00:08:30
application programming interfaces or
00:08:32
apis these apis are essentially
00:08:35
communication points between front ends
00:08:37
and backends allowing front ends to
00:08:39
retrieve or post data to backends if you
00:08:42
have a solid background in a programming
00:08:44
language and databases you can learn any
00:08:46
of these Frameworks in about 2 months so
00:08:48
if you dedicate a few hours every day
00:08:50
and follow this road map you'll have the
00:08:53
necessary knowledge to apply for
00:08:55
entrylevel backend Developer jobs in
00:08:57
about 12 months now let's talk about the
00:08:59
essential languages and Technologies you
00:09:01
need for frontend development frontend
00:09:03
development is built on Three core
00:09:05
languages HTML CSS and JavaScript HTML
00:09:09
or hypertext markup language is used for
00:09:12
structuring web pages we can Define
00:09:14
headings paragraphs images links and
00:09:16
more it's quite simple and if you
00:09:18
dedicate a few hours a day you can learn
00:09:20
the basics in a week or two the next
00:09:22
thing you need to learn is CSS or
00:09:24
cascading stylesheets CSS is used for
00:09:27
styling web pages it allows us to
00:09:29
control colors fonts layouts and so on
00:09:32
it helps create responsive designs that
00:09:34
adapt to different screen sizes with a
00:09:36
few hours of practice a day you can
00:09:38
learn the essence of CSS in 2 to 4 weeks
00:09:41
you won't be an expert but you'll have
00:09:43
practical knowledge to apply in your
00:09:45
projects as you work on different
00:09:46
projects you will learn additional
00:09:48
techniques along the way the next thing
00:09:50
you need to learn is Javascript and this
00:09:52
is where programming starts HTML and CSS
00:09:55
are for structuring and styling pages
00:09:57
but programming is about logic it's
00:09:59
about algorithms and this is where
00:10:01
JavaScript comes in with JavaScript we
00:10:03
can make our web pages interactive we
00:10:05
can handle user clicks validate form
00:10:08
data show popups get data from the back
00:10:10
end and basically bring our website to
00:10:12
life now if you have never programmed
00:10:14
before this might be the most
00:10:15
challenging part of your journey because
00:10:17
you have to learn how to think like a
00:10:19
programmer it might feel weird at the
00:10:21
beginning but with continuous study and
00:10:23
consistent practice I'm sure you can get
00:10:25
a reasonable grasp of it in about 2
00:10:27
months the next thing you need to learn
00:10:29
is typescript it's a language that's
00:10:31
built on top of JavaScript that adds
00:10:33
static typing and additional features
00:10:36
allowing us to write more robust code
00:10:38
these days most companies prefer
00:10:40
typescript for large scale applications
00:10:42
so if you want to land a frontend
00:10:44
developer job in 2024 and Beyond
00:10:46
typescript is a must know it's
00:10:48
relatively small compared to JavaScript
00:10:51
and you can get up and running in about
00:10:52
2 to 3 weeks next on our list is a UI or
00:10:56
user interface library or framework a UI
00:10:59
framework is for building user
00:11:01
interfaces using reusable components or
00:11:04
building blocks examples include react
00:11:06
angular View and so on react is the most
00:11:09
popular and has a ton of job
00:11:11
opportunities so if you're looking to
00:11:12
land a frontend developer job react is
00:11:15
your best bet now to learn react
00:11:17
effectively you need to have a solid
00:11:19
understanding of JavaScript and basic
00:11:21
grasp of typescript because most react
00:11:23
projects these days use typescript so
00:11:25
make sure to build a strong foundation
00:11:27
in JavaScript before diving into react
00:11:30
otherwise you're going to face numerous
00:11:32
challenges with a solid understanding of
00:11:34
JavaScript you can get up and running
00:11:36
with react in about 2 months then you
00:11:38
can explore other options like angular
00:11:40
or view to add to your resume focus on
00:11:42
one framework at a time learn it
00:11:44
properly do a few projects and once you
00:11:46
have a solid understanding you can learn
00:11:48
other Frameworks if you wish so that's
00:11:51
the core of front and development these
00:11:53
skills are listed on nearly every job
00:11:55
description and with continuous learning
00:11:57
and consistent practice you can learn
00:11:59
them all in about 6 months but I got to
00:12:02
be honest with you frontend development
00:12:03
is competitive so to truly stand out
00:12:06
there are additional skills you need to
00:12:08
learn to increase your job opportunities
00:12:10
so let's go over them one by one you
00:12:12
learn that with CSS we can style web
00:12:15
pages and make them beautiful now as our
00:12:17
projects grow and get more complex
00:12:19
styling Pages using plain CSS can become
00:12:22
painful and messy so over time many
00:12:24
solutions have been created to address
00:12:26
this problem one of them is CSS
00:12:29
pre-processors which allow us to write
00:12:31
CSS in a more efficient syntax using
00:12:34
additional features and then compile it
00:12:36
down to plain CSS examples include SAS
00:12:39
Les and stylus different projects use
00:12:42
different tools and you don't need to
00:12:43
learn all of these to apply for a front
00:12:45
and developer job if you're familiar
00:12:47
with one of them you can quickly learn
00:12:49
others on the job out of these I would
00:12:51
suggest SAS because it's the most
00:12:53
popular and a good one to start with one
00:12:55
to two weeks is enough to get up and
00:12:57
running with SAS another approach to
00:12:59
writing manageable CSS is using a CSS
00:13:02
framework a CSS framework provides
00:13:05
pre-written CSS that we can use in our
00:13:07
applications some of the popular ones
00:13:09
are bootstrap Tailwind Foundation
00:13:12
skeleton and so on now as you can see
00:13:14
here on npm Trends bootstrap used to be
00:13:16
very popular and a lot of projects are
00:13:19
still using it but over the past couple
00:13:21
of years Tailwind has been emerging and
00:13:23
overtaken bootstrap so a lot of newer
00:13:25
projects particularly react projects use
00:13:28
Tailwind so out of these I recommend
00:13:30
learning Tailwind it's not that
00:13:32
complicated and you can get a decent
00:13:34
grasp of it in about 2 to 4 weeks
00:13:37
another key skill that employeers are
00:13:39
looking for especially in senior
00:13:41
developers is automated testing with
00:13:43
automated testing we can write code to
00:13:45
test our code and make sure it functions
00:13:48
correctly automated testing minimizes
00:13:50
bugs and enhances the overall quality of
00:13:53
our applications there are many testing
00:13:55
Frameworks out there but the two most
00:13:57
popular ones are just and V test which
00:13:59
are pretty similar so once you learn one
00:14:01
of them you can learn the other pretty
00:14:03
quickly just is the most popular one but
00:14:05
it has some baggage so newer projects
00:14:08
often use vest again they're very
00:14:10
similar and you can start with either of
00:14:12
them I believe 3 to four weeks is enough
00:14:15
to learn the essence of just and
00:14:17
automated testing principles next on our
00:14:20
list is meta Frameworks a meta framework
00:14:22
is a higher level framework that sits on
00:14:24
top of a core UI library or framework
00:14:27
and enhances its cap abilities it's not
00:14:30
something that all employers are looking
00:14:31
for because it's only used in newer
00:14:34
projects a lot of older projects don't
00:14:36
use a meta framework but if you want to
00:14:38
have a Competitive Edge if you're
00:14:40
looking for a better position with a
00:14:41
better salary I would recommend learning
00:14:43
a meta framework for react applications
00:14:46
we have nextjs which is the more popular
00:14:48
option and remix I recommend learning
00:14:51
nextjs which you can master in 4 to 6
00:14:54
weeks if you have a strong foundation in
00:14:56
react so that really sums up the
00:14:58
essential schem deals you need to become
00:15:00
a frontend developer if you have any
00:15:02
questions please let me know in the
00:15:03
comments below and I will do my best to
00:15:05
answer you right here or in my future
00:15:08
videos if you enjoy this video please
00:15:10
give it a like And subscribe for more
00:15:12
useful content