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