Start with Backend, Not Frontend
45sChallenges common advice by recommending backend first, sparking debate among aspiring developers.
▶ Play Clip"Delivers a comprehensive roadmap as promised, though some sections are padded with self-promotion."
This video provides a comprehensive roadmap for becoming a web developer, covering both backend and frontend development. It outlines the essential skills, recommended learning paths, and time estimates for each area, aiming to guide beginners through the process of acquiring the necessary knowledge to land an entry-level job.
Web development is divided into frontend (user-facing) and backend (server-side logic and data). Full stack combines both. Starting with backend is recommended for a solid programming foundation.
Five essential backend skills. First is picking a language (JavaScript, Python, Ruby, Java, C#, Go). Choice depends on project needs; Python is recommended for beginners due to simplicity, Java for solidity, and JavaScript for full stack. Stick to one language and learn its ecosystem.
Learn Git and GitHub for tracking code changes and collaboration. Apply the 80/20 rule; 1-2 weeks of practice is enough to get started.
Critical for computer science fundamentals and tech interviews. Self-taught programmers often skip this, but it's essential for long-term success. Spend 1-2 months studying classic data structures and algorithms.
Proven solutions to common software design problems. 23 classic patterns from the 'Gang of Four' book. Learning them helps understand frameworks like Spring, Django, and ASP.NET Core. Dedicate about 2 months.
Understand relational (SQL) and non-relational (NoSQL) databases. Relational: MySQL, PostgreSQL, SQL Server, Oracle; best for complex queries and transactions. NoSQL: MongoDB, CouchDB, Cassandra; flexible data models. Learn one, MySQL recommended. One month for SQL basics.
Learn a framework based on your language: Django (Python), Spring Boot (Java), Express.js (JavaScript), ASP.NET Core (C#), Ruby on Rails (Ruby), Go (Gin). They provide tools for building APIs. With solid language and database knowledge, learn a framework in about 2 months.
Following the roadmap with a few hours daily, you can be job-ready for entry-level backend roles in about 12 months.
HTML structures web pages, CSS styles them. HTML basics in 1-2 weeks, CSS in 2-4 weeks with daily practice.
JavaScript brings interactivity. Learning to think like a programmer is challenging but achievable in about 2 months with consistent practice.
TypeScript adds static typing to JavaScript, preferred for large-scale applications. Essential for 2024 jobs. Learn in 2-3 weeks.
React is the most popular UI library with many job opportunities. Requires solid JavaScript and basic TypeScript. Learn React in about 2 months, then explore Angular or Vue.
Core frontend skills can be learned in about 6 months, but the field is competitive.
CSS pre-processors like Sass improve CSS efficiency. CSS frameworks like Tailwind are increasingly popular. Learn Sass in 1-2 weeks, Tailwind in 2-4 weeks.
Testing frameworks like Jest and Vitest ensure code quality. Learn one in 3-4 weeks.
Meta frameworks like Next.js enhance React. Recommended for competitive edge and better salary. Learn Next.js in 4-6 weeks with strong React foundation.
The video provides a structured roadmap for both backend and frontend development, emphasizing the importance of fundamentals and consistent practice. It offers realistic timeframes and recommends specific technologies to increase job prospects.
What are the two main areas of web development?
Frontend and backend development.
00:01
Which programming language is recommended for beginners in backend development?
Python, because of its simple and readable syntax.
02:36
What is the 80/20 rule in the context of Git?
80% of the time you use 20% of Git's features.
03:56
Why are data structures and algorithms important for self-taught programmers?
They are critical for computer science fundamentals and are often covered in tech interviews at big companies.
04:22
What are design patterns?
Proven solutions to common software design problems.
05:00
Name two types of database engines and give an example of each.
Relational (e.g., MySQL) and non-relational/NoSQL (e.g., MongoDB).
06:15
Which framework is recommended for Python backend development?
Django.
07:50
How long does it take to learn the basics of HTML with a few hours of daily practice?
One to two weeks.
09:14
What is TypeScript and why is it important for frontend developers in 2024?
TypeScript is a language built on top of JavaScript that adds static typing; it's preferred for large-scale applications and is a must-know for frontend jobs.
10:33
Which UI framework is the most popular and has the most job opportunities?
React.
11:15
What is a CSS pre-processor and give an example?
A tool that allows writing CSS in a more efficient syntax with additional features, compiled to plain CSS; example: Sass.
12:33
What is a meta framework and which one is recommended for React?
A higher-level framework that enhances a core UI library; Next.js is recommended for React.
14:22
Web Development Split
Clearly defines frontend vs backend, setting the stage for the entire roadmap.
00:01Python Recommended for Beginners
Provides a concrete recommendation for beginners, reducing decision paralysis.
02:36Don't Skip Data Structures
Warns against a common pitfall for self-taught developers, emphasizing long-term importance.
04:2212-Month Backend Timeline
Gives a realistic time estimate for becoming job-ready, setting expectations.
08:48Frontend is Competitive
Honest acknowledgment that frontend requires extra skills to stand out.
11:53[00:01] become a web developer web development is generally broken down into two areas frontend development and backend development and then full stack development which is a combination of both frontend development is all about
[00:14] what the user sees and interacts with it's the website in your browser or the app on your mobile phone or tablet backend development handles everything behind the scenes like data processing storage and logic you can start on
[00:26] either end but if you're starting out and pursuing a career in web development backand because it gives you a solid foundation in programming and problem solving plus when you transition from back end to front end you'll have a deep
[00:40] understanding of what happens under the hood in contrast if you start with the front end back end looks like a mystery and you'll have no idea what's really video first we're going to cover the skills you need to become a backend
[00:53] front-end development to become a backend developer there are five essential skills let's go over them one by
[01:05] development is to pick up a programming language here we have a few options like language here we have a few options like JavaScript python Ruby Java C and go just to name a few now which one is the best well it's almost impossible to pick
[01:17] one language as the best or the ultimate language because the choice of language depends on various factors like project requirements team expertise and performance needs for example JavaScript is used for full stack development
[01:30] because we can use it on both the front end and the back end in contrast Python and Ruby are often used for rapid prototyping and fast development Cycles Java and C are often used in building large scale Enterprise grade
[01:44] applications they're heavily used in large organizations and government systems and go is used for performance critical and concurrent applications now students is that they try to learn many of these languages hoping that this
[01:58] would increase their job opportunities but it doesn't work that way because learning a language is only the first step you also need to learn the ecosystem of tools and libraries for that language to land a job so if you're
[02:10] starting out just stick to one language whichever you like but also do a bit of opportunities are available for that language where you live generally speaking there are often more job opportunities for python Java and
[02:24] JavaScript but again I want you to do your own research now assuming that there are more job opportunities is for these three languages in your town and you're not sure what language to start with I would recommend python because
[02:36] it's the easiest and has a simple readable syntax that's great for beginners my second choice is Java because it's a solid language and is often taught to computer science and software engineering students JavaScript
[02:49] from the past because it wasn't originally built for building backends we can certainly use it to build great backends and I've done that many times but I still prefer Java or or C to JavaScript for building backends so
[03:03] don't overthink this pick a language and dedicate 2 months to learning it if you spend 3 to 5 hours every day studying and coding you can learn any of these languages in about 2 months now to help you on this journey I've created a free
[03:16] supplementary PDF that breaks down the specific Concepts you need to learn for each skill it also includes several project ideas to help you practice and apply what you have learned it's a great resource to review your progress find
[03:30] interviews you can find the link in the description Box by the way I have a bunch of tutorials on this channel and complete courses on my website if you're looking for structured learning again links are in the description box the
[03:43] next thing you need to learn is a version control system like git git is not a programming language it's a tool that we use to track changes to our code and collaborate with others git and GitHub which is a platform that hosts
[03:56] git repositories are essential for every developer git has a ton of features but you don't need to know them all for everyday use think of it like the 8020 rule 80% of the time you use 20% of gits features so one to two weeks of practice
[04:09] is enough to get up and running now building backends often involves working with data structures and implementing complex algorithms this is where a lot of self-taught programmers struggle because they try to skip ahead and learn
[04:22] more and more languages and tools without learning the fundamentals of computer science data structures and algorithms are critical subjects taught to computer science students and they're often covered in Tech interviews
[04:35] especially at Big tech companies like apple Google and Microsoft while you can skip this step and go to the next as someone who has had the privilege of teaching millions of people I highly recommend you not overlook this step
[04:47] otherwise you're going to feel the pain later in your career so spend 1 to two months studying classic computer science data structures and algorithms this will give you a strong foundation in programming and problem solving the next
[05:00] thing I'll recommend to learn which a lot of self-taught people Miss is design patterns design patterns are proven solutions to Common software design problems there are 23 classic design patterns that were documented in this
[05:13] classic book design patterns by the gang of four many of these patterns are used in web Frameworks particularly spring Django and as.net core which we will talk about in a few minutes so learning these design patterns will give you a
[05:26] deeper understanding of object-oriented design principles and how these Frameworks work under the hood now I got to tell you this book is pretty old and it's written in C++ honestly it's a difficult read because
[05:39] many of the examples in the book are dry and not quite relevant to Modern software that's why I've created a very handson and pragmatic course on this topic where I use Java and modern examples that you find in applications
[05:51] we use every day so you can see how these design patterns are used to solve problems in modern applications whether you want to take my course or a different resource I believe if you dedicate a few hours every day you can
[06:03] have a pretty solid understanding of design patterns in about 2 months the next thing you need to learn is understanding and designing databases there are two classes of database engines relational and non-relational
[06:15] also called No SQL databases in relational databases data is stored in tables with rows and columns that are related that's why we call them relational databases these databases are best for applications that require
[06:29] complex queries and transactions like banking systems and e-commerce applications especially any application that needs complex reporting examples of relational database engines are MySQL postgress SQL server and Oracle these
[06:43] are different products that despite some differences work more or less the same way with all these products we retrieve or store data using a language called SQL some people call it SQL which is short for structured query language it's
[06:58] a simple language that looks like plain English now you don't need to learn all these database engines because different projects and teams use different out you just need to learn one of them and you can easily pick up others on the
[07:11] job out of these I would recommend MySQL because it's the most popular database engine but you can pick any other database engine that you like one month is enough to learn the essence of SQL and working with a relational database
[07:24] now in no SQL databases data is stored without a predefined table structure so these databases are more flexible they're best for applications that require flexible data models and real-time analytics examples include
[07:38] real-time analytics examples include mongod DB couch DB and Cassandra again these are several products out there and you don't have to learn all of them out of these I would recommend mongodb because it's the most popular and you
[07:50] going to be an expert but you're going to have a decent practical knowledge the framework which depends on your programming language for python you should learn Jango for Java you should learn spring boot for JavaScript you
[08:06] should learn express.js for C you should learn as. net core for Ruby you should learn Ruby on Rails and for go you should learn J all these Frameworks more or less do the same thing they provide a bunch of tools for building backends
[08:20] handling tasks like routing requests and response handling database interaction and Security in a nutshell with these Frameworks we can build and publish application programming interfaces or apis these apis are essentially
[08:35] communication points between front ends and backends allowing front ends to retrieve or post data to backends if you have a solid background in a programming language and databases you can learn any of these Frameworks in about 2 months so
[08:48] if you dedicate a few hours every day and follow this road map you'll have the necessary knowledge to apply for entrylevel backend Developer jobs in about 12 months now let's talk about the essential languages and Technologies you
[09:01] need for frontend development frontend development is built on Three core development is built on Three core languages HTML CSS and JavaScript HTML or hypertext markup language is used for structuring web pages we can Define
[09:14] headings paragraphs images links and more it's quite simple and if you dedicate a few hours a day you can learn the basics in a week or two the next thing you need to learn is CSS or cascading stylesheets CSS is used for
[09:27] styling web pages it allows us to control colors fonts layouts and so on it helps create responsive designs that adapt to different screen sizes with a few hours of practice a day you can learn the essence of CSS in 2 to 4 weeks
[09:41] you won't be an expert but you'll have practical knowledge to apply in your projects you will learn additional techniques along the way the next thing you need to learn is Javascript and this is where programming starts HTML and CSS
[09:55] are for structuring and styling pages but programming is about logic it's about algorithms and this is where JavaScript comes in with JavaScript we can make our web pages interactive we can handle user clicks validate form
[10:08] data show popups get data from the back end and basically bring our website to before this might be the most challenging part of your journey because you have to learn how to think like a programmer it might feel weird at the
[10:21] beginning but with continuous study and consistent practice I'm sure you can get a reasonable grasp of it in about 2 months the next thing you need to learn is typescript it's a language that's built on top of JavaScript that adds
[10:33] static typing and additional features allowing us to write more robust code these days most companies prefer typescript for large scale applications so if you want to land a frontend developer job in 2024 and Beyond
[10:46] typescript is a must know it's relatively small compared to JavaScript and you can get up and running in about 2 to 3 weeks next on our list is a UI or user interface library or framework a UI framework is for building user
[11:01] interfaces using reusable components or building blocks examples include react angular View and so on react is the most popular and has a ton of job opportunities so if you're looking to land a frontend developer job react is
[11:15] your best bet now to learn react effectively you need to have a solid understanding of JavaScript and basic grasp of typescript because most react projects these days use typescript so make sure to build a strong foundation
[11:27] in JavaScript before diving into react otherwise you're going to face numerous challenges with a solid understanding of JavaScript you can get up and running with react in about 2 months then you can explore other options like angular
[11:40] or view to add to your resume focus on one framework at a time learn it properly do a few projects and once you have a solid understanding you can learn other Frameworks if you wish so that's the core of front and development these
[11:53] skills are listed on nearly every job description and with continuous learning and consistent practice you can learn them all in about 6 months but I got to be honest with you frontend development is competitive so to truly stand out
[12:06] there are additional skills you need to learn to increase your job opportunities so let's go over them one by one you learn that with CSS we can style web pages and make them beautiful now as our projects grow and get more complex
[12:19] styling Pages using plain CSS can become painful and messy so over time many solutions have been created to address this problem one of them is CSS pre-processors which allow us to write CSS in a more efficient syntax using
[12:33] additional features and then compile it down to plain CSS examples include SAS Les and stylus different projects use different tools and you don't need to learn all of these to apply for a front and developer job if you're familiar
[12:47] with one of them you can quickly learn others on the job out of these I would suggest SAS because it's the most popular and a good one to start with one to two weeks is enough to get up and running with SAS another approach to
[12:59] writing manageable CSS is using a CSS framework a CSS framework provides pre-written CSS that we can use in our applications some of the popular ones are bootstrap Tailwind Foundation skeleton and so on now as you can see
[13:14] here on npm Trends bootstrap used to be very popular and a lot of projects are still using it but over the past couple of years Tailwind has been emerging and overtaken bootstrap so a lot of newer projects particularly react projects use
[13:28] Tailwind so out of these I recommend learning Tailwind it's not that complicated and you can get a decent grasp of it in about 2 to 4 weeks another key skill that employeers are looking for especially in senior
[13:41] developers is automated testing with automated testing we can write code to test our code and make sure it functions correctly automated testing minimizes bugs and enhances the overall quality of our applications there are many testing
[13:55] Frameworks out there but the two most popular ones are just and V test which are pretty similar so once you learn one of them you can learn the other pretty quickly just is the most popular one but it has some baggage so newer projects
[14:08] often use vest again they're very similar and you can start with either of them I believe 3 to four weeks is enough to learn the essence of just and automated testing principles next on our list is meta Frameworks a meta framework
[14:22] is a higher level framework that sits on top of a core UI library or framework and enhances its cap abilities it's not something that all employers are looking for because it's only used in newer projects a lot of older projects don't
[14:36] use a meta framework but if you want to have a Competitive Edge if you're better salary I would recommend learning a meta framework for react applications we have nextjs which is the more popular option and remix I recommend learning
[14:51] nextjs which you can master in 4 to 6 weeks if you have a strong foundation in react so that really sums up the essential schem deals you need to become questions please let me know in the comments below and I will do my best to
[15:05] answer you right here or in my future videos if you enjoy this video please give it a like And subscribe for more useful content
⚡ Saved you 0h 15m reading this? Transcribe any YouTube video for free — no signup needed.