Roadmap to become a Full Stack Web Developer

So you want to be a full stack developer. But before being a full stack developer one crucial doubt needs to be cleared.

What is full stack web development?

Full Stack development is a mixture of frontend and backend development. In simple words frontend development is developing the look and feel of a website or application (the part what users will see and interact) and backend development is building the server side logics including database (how the application/site works). So a fullstack developer is a person who builds the view of the site/application as well as the logical and server side of the application.

So there are 3 main parts of fullstack development and to be a full stack developer these 3 things you need to learn.

1. Front end Development:-

As discussed earlier front end means the part which users will see and interact with. If you open a site, whatever you see on the browser is the front end. Each and every part of the site that you see on the browser like texts, images, sliders, buttons, animations etc. come under frontend. To be able to build frontend of an application/site you need to know the following things.

  • HTML:- HTML is the skeleton of a website. HTML stands for Hypertext Markup Language. HTML builds each and every element of the website. So to be a web developer you must know HTML properly.
  • CSS:- HTML does build the website but it doesn’t look great without any external styling. CSS does the styling for the website and makes it presentable. CSS stands for Cascading Style Sheets and as the name suggests, it does the styling and makes things good looking. CSS not only does the styling but also specifies the position, placement, margin, spaces gaps etc. So CSS is crucial to learn. Sometimes it becomes hard to remember the CSS properties it seems boring. But never memorize any code. Just clear the concepts and everything is available on the web.
  • Javascript:- HTML & CSS can’t do any logical task on your website. It can only build things and make it look good. But when it comes to perform any task then Javascript comes into the picture. Suppose you have a button and you want to change a text on the page by clicking on the button or you want to make a calculator or anything that requires condition handling (if-else) you will need javascript. Javascript is mainly for the client side(runs on your browser) but now it runs on server also (Node.js). So if you want to be a web developer you have to have proper knowledge of javascript.
  • CSS frameworks and libraries:- HTML, CSS & Javascript are enough to make a beautiful website but not easy though specially for beginners. There are many CSS frameworks which can make your life easier by providing you with a good set of UI components and other useful CSS classes. Some of the popular and useful CSS frameworks are Bootstrap and Materialize CSS.
  • Bootstrap:- Bootstrap is one of the most popular CSS frameworks in the world. It provides you so many classes that you can build a full website without writing a single line of CSS. Lots of big companies also use bootstrap in their projects.
  • Materialize CSS:- It’s also the same as bootstrap which can help you build your UI (User Interface) fast and nicely.

These are the basic things that you need to learn to grasp the frontend development. It’s not a complete list though. It’s just the basics after these you can go for javascript libraries or frameworks (React.js, Vue.js, Angular.js etc.). But these are the basics that you need to know to start off.

2. Back end Development:-

Backend development deals with the server side of any application. Browsers can’t communicate with the database directly. So your frontend can’t get anything from the database directly. For talking to databases you will need a server side programming language.

So taking requests from browsers (front end), processing those requests, handling databases and sending back the response are the main functions of backend development.

To be able to be a backend developer you need to grasp any one of the following to start with:-

  • PHP:- PHP is one of the most popular backend programming languages. Many big companies including facebook use PHP as their backend programming language. Its easy to start with as the community is huge. There are some popular frameworks based on PHP like Laravel, CodeIgniter etc but you must work with core PHP before jumping into any framework.
  • Node.js:- Node.js is one of the rising and popular backend environments among the startups as well as big companies. Node.js is not a programming language, rather it’s a runtime environment for javascript. So using Node.js basically means using javascript on your server.
  • Python:- Python can be used as a backend programming language with Flask or Django framework. These two especially django are popular and used by a lot of companies but not as much as PHP or Node.js.

Apart from these 3 there are several options for backend development like Java (JSP, Servlet), ASP.net, Ruby on Rails etc. but I would suggest to choose any one of the top two if you are a beginner and want to get a job ASAP.

3. Databases:-

Database is the collection of information which is used in any application. Databases are an organized way to maintain your data. To become a fullstack developer you need to know why and how to use databases. There are two types of database that are used by most of the developers.

  1. SQL database
  2. No-SQL Database
  • There are some popular SQL databases that are being used world wide but as a beginner you can start with MySQL.
  • There is one database among the No-SQL databases which is very popular nowadays i.e MongoDb. It’s also easy to start with for beginners.

Frontend, Backend and databases are not everything that you will need to be a full stack developer. Other things you should know as a developers are:-

  • Code Editor:- Code Editors are the softwares on which you write your code. Many good code editors are there but in my opinion Vs Code and Sublime text will be good.
  • GIT:- Git is a version controlling system.
  • Package manager:- Package managers are the tools which helps to download and manage the external packages for the project. NPM, Yarn, Composer are some of the common package managers.
  • Web Architecture:- Web architecture and its concept has to be grasped properly if you want to be a full stack developer. 3 tier architecture, how browser requests to the server and how server handles it and everything.

Learn the concepts, do projects, search in google and find solution.

Keep Coding!

Feel free to contact me on Instagram

Technology | Flutter | UIX