Guide to become a full-stack engineer

Syed Hassaan Ahmed
Published in
4 min readApr 10, 2021


Here is the complete guide for you to become a full-stack engineer. In the industry, there is been a huge demand for full-stack engineers. Full-stack engineers are those who work on frontend, backend, databases, and sometimes on infrastructure as well. But right now it's not like the jack of all trades but in this field, engineers have deep knowledge of every aspect of the complete technology stack. As the tech is evolving day by day so it is becoming easy for engineers to think for solutions rather than caring about how they will implement that.

First of all, create a GitHub account if you don't have one and learn about GIT and GitHub.

make sure all the practice you do is on Github with proper commits frequencies and messages, this will help in showing your code to employers to get internships and jobs.

Step # 1 (HTML and CSS)

  1. Learn the basic syntax of HTML 5.
  2. Learn semantics of HTML tags.
  3. Learn about HTML tag attributes.
  4. Learn the basic syntax of CSS (Inline vs External vs Internal).
  5. Learn about CSS selectors.
  6. Learn CSS Flexbox and Grid.

Try developing this project using your above knowledge.

7. Learn about bootstrap

and create the same page using bootstrap and compare the development effort involved.

If you were able to develop this thing using HTML, CSS, and bootstrap then congratulations now on you can design web pages for anyone just keep practicing and improvising plus search for problems online and solve them using HTML, CSS, and bootstrap.

Step # 2 (JavaScript)

  1. Get Basic Knowledge of how browsers work.
  2. Learn what is JavaScript?
  3. Learn what is JSON?
  4. Learn about consuming REST API in JavaScript.
  5. Create a browser application in JavaScript to Create, Read, Update and Delete GitHub Gists. (reference).
  6. Learn ReactJs.(create the same application in ReactJs).
  7. Now you have completed the frontend if you have completed all steps above you can call yourself a frontend engineer and start applying for frontend jobs.

Step # 3 (DataBases)

Now in this step, I want you to learn some databases.

  1. Learn what is a database?
  2. Learn SQL.
  3. Learn no SQL
  4. Learn MongoDB

Create a database for an organization to manage their employees’ attendance in SQL as well as NoSQL
if you were able to design a database for this requirement then you are good to go to the next step.

Step # 4 (Backend)

In previous steps you learned about frontend and database now to connect both these you need a strong codebase that will be running on some server so this codebase is basically referred to as the backend of any application.

to create a backend of any application you need to know any backend language of your interest and choice there are many good technologies that you can opt for like nodejs, python, ruby, Golang, scala, C#, F#.

As I said all of them are great technologies but for this guide, I will go for one which is of interest and that is C# on .NET 5.

  1. Learn about HTTP.
  2. Learn the basic syntax of C#.
  3. Learn what is API in general.
  4. Learn what is REST API.
  5. Learn how authentication works on the backend.
  6. Learn about ORMs.
  7. Learn API development.
  8. Learn Entity Framework Core (both code first and DB first).
  9. Learn about identity and JWT.

Create a Social media web app with features

Users (sign-in/signup) (using JWT and identity).

Manage users’ profiles.


Add friend

Post, like, comment and share.

all the API endpoints should be secure.

Step # 5 (DevOps basics)

  1. Learn Basic Linux Commands
  2. Learn what is firewall?.
  3. Learn any scripting language like Python, Go, etc
  4. Learn what is web server?
  5. Learn what is cloud and what are some famous cloud providers?
  6. Learn what is VM (Virtual Machine)?
  7. Learn what are containers?
  8. Learn Docker.
  9. Choose any from the above famous cloud providers (my recommendation would be AWS)
  10. Learn how you can create a VM in that cloud with Linux?
  11. So for final step you need to deploy complete application you developed in previous step in this VM.

Deploy frontend which is reactjs using PM2 separately on port 8080.

Dockerize backend API and deploy it using docker.

This is only the guide you have to learn yourself no one will help you in learning but they can provide you the direction of learning so this the direction to become a full-stack engineer and this knowledge is not enough also you will learn many other things along with this.

hope this guide will help you learn something let me know in the comments if any help required regarding any step.

Share this article in your circle so that anyone can take advantage of this guide.