Giter Club home page Giter Club logo

backend-roadmap's Introduction

BACK-END ROADMAP

Are you looking to navigate the ever-evolving world of Backend development? Whether you're a beginner or an experienced developer, understanding the key technologies, tools, and concepts that are essential for success is crucial. This comprehensive roadmap provides you with a clear direction for your learning journey and covers the core aspects of Backend development.

Good To Know

This roadmap assumes that You have already studied the following topics:

  • At least one programming language, such as JavaScript, C++, or Java, and a basic understanding of the concepts of programming, such as variables, loops, and functions.
  • Fundamental of Algorithms and Data Structures, such as Big O Notation, Arrays, Linked Lists, Stacks, Queues, Sorting, and Searching.
  • Understanding of Object-Oriented Programming (OOP) concepts, such as classes, inheritance, and polymorphism.

Here are some resources to learn these topics:

General Index:

🔗 Entry - Computer Science Essentials & Basics

🔗 Beginner General

🔗 Beginner & Intermediate Web Technologies

🔗 Intermediate & Advanced General

🔗 Interview Preparation


Entry - Computer Science Essentials & Basics:

Notes:

1. Don't study this section sequentially, study all topics altogether at the same time.

2. Before you start, you should know that you are going to learn a lot of things about computer science.

3. DON'T GO AND RUSH TO A TECHNOLOGY!

Introduction to Computer Science

Introduction to Computer Science

There are two great courses, One provided by MIT, the second provided by Harvard

both are great!

📹 Introduction to Computer Science and Programming Using Python

OR

📹 CS50's Introduction to Computer Science

please note that you can audit the course and take it for free!

please note that you can use subtitle if you find it hard to understand only in english

_If you want CS 50 Translated

📹 مترجم بالعربي CS50 2020

Data Structure and Algorithms

Videos

📹 Data Structures Easy to Advanced Course - Full Tutorial from a Google Engineer

OR

📹 Data Structures Full Course In Arabic

Books

📖 Grokking Algorithms - Entry Level

📖 Algorithms Unplugged - More Advanced

Introduction to Databases

Videos

📹 SQL Tutorial - Full Database Course for Beginners

📹 MySQL Tutorial for Beginners [Mosh]

📹 Database Design Course - Learn how to design and plan a database for beginners

OR

📹 مقرر أساسيات قواعد البيانات - DB 1

📹المقرر العملى

📹 مقدمة الى قواعد البيانات - مهارات تك

Books

📖 First 6 Chapters of Fundamentals of Database Systems Seventh Edition

Software Analysis & Design

Videos

📹 Software Analysis & Design Arabic Course

Introduction to Operating Systems

Videos

  1. CS 162, 2019, UC Berkeley - This is very comprehensive course, it's okay if you study it along with the other materials. 📹 Videos

📄 Resources

Books

📖 Introduction to Operating System Design and Implementation - Entry Level

OR

📖 OPERATING SYSTEMS THREE EASY PIECES - Entry Level


Beginner General

🔗 UML & Modeling - Requirements Analysis

🔗 Development Tools & IDEs

🔗 Introduction To Web Development

🔗 Frontend Basics

UML & Modeling - Requirements Analysis:

Notes:

you should never start coding without first thinking and modeling what you will actually be coding.

Software Requirements Analysis & UML

Articles

📄 Software Requirements Analysis with Example

Videos

📹 UML Diagrams Full Course (Unified Modeling Language)

Books

📖 UML Distilled

Development Tools & IDEs:

Git & GitHub

📹 Git & GitHub - English, Freecodecamp

OR

📹 Git & GitHub - Arabic, Almdrasa

Editors

Editors

🖇️ PHPStorm - Recommended

🖇️ VS Code - Recommended for Low Laptop Spec

Introduction To Web Development:

Client-Server Model

📹 Client-Server Architecture-1

📹 Client-Server Architecture-2

HTTP & Intro to HTTP Methods

📹 HTTP Exploration - English

📹 HTTP Exploration - Arabic

How Internet Works?

📹 How the Internet Works - Entry Level

Basics of API and REST architectural style

📹 What is an API

📹 REST API & RESTful Web Services Explained

Basics of Web Development

📹 Harvard - Web Basics

Backend Group Video

📽️ Eyad Hamza, CIS - Backend Group Video Preparation

📽️ Eyad Hamza, CIS - Backend Group Slides

Frontend Basics:

HTML & CSS

📹 HTML - Arabic

📹 CSS - Arabic

OR

📹 HTML - English

📹 CSS - English

HTML & CSS Course With Two Projects

📹 The Complete HTML & CSS Course and Projects in Udemy

Javascript & Ajax & JSON

📹 JavaScript Intro - English

📹 AJAX Crash Course - English

📹 JSON Crash Course - English

OR

📹 Javascript Json & Api- Arabic From Video 169 to End


Beginner & Intermediate Web Technologies:

  • Choose only one of the following options.
  • Consider the job market requirements when making your choice.
  • While Laravel and PHP are recommended for those in Egypt, it's still essential to search employment websites to determine the current demand for tech stacks before making a decision.
  • Keep in mind that stack requirements may vary in different regions

🔗 Laravel & PHP

🔗 Django & Python

🔗 ASP.net & C#

Laravel & PHP:

Beginner:

PHP - Baiscs

📹 Getting to know the basics - PHP 8 - Arabic

OR

📹 Getting to know the basics - PHP- FreeCodeCamp - English

PHP - OOP
Videos:

Choose at least two

📹 OOP - Arabic

📹 OOP - English

📹 OOP - English

Books:

📖 programming php 4th edition - Oreilly

PHP - MVC

📹 Getting to know the basics - English

OR

📹 PHP MVC project in arabic

AND

Note that It is a very important Course, you should see it even you watch either of the previous ones.

📹 PHP For Beginners Laracasts 2023-edition - English

PHP Projects

📹 Php & Mysql Ecommerce Project

📹 PHP MVC Assignment Tracker Project

PHP Updates

📹 What is new in PHP 8

📖 Front Line PHP

Laravel Basics

Videos

  1. 📽️ Backend Bootcamp: Laravel & Backend Introducion - Eyad Hamza

  2. 📹 laravel 8 from scratch

  3. 📹 Laravel From Scratch

Laravel Projects

After you finish, Watch & Apply in section number 14 in this playlist

  1. 📹 laravel 6 from scratch

After you implement Tweety app (in the laravel 6 series) you will follow these tutorials for more projects

  1. 📹 Build an instagram clone
  2. 📹Job listings application | Traversy Media

After you finish, It's time to finish things on your own with two projects:

🖇️ Project 1:

Use this document as reference to system requirements and build your own system.

🖇️ Project 2:

Use a design template and turn it to a complete website:

🖇️ Project 3:

Build a website to show your cv where you can add your works, services, portfolio, biography and all to be controlled using a dashboard you can use any of these templates :

Admin Panels

Note that admin dashboard is required - you may use Filament or you can use any other dashboard you like.

📹  Laravel Filament Full Tutorial

📹  Laravel Filament Roles and Permissions Full Tutorial

📹 FilamentDaily Channel - Filament tips

Laravel API

📹  Laravel API - 1

📹  Laravel API - 2

📹 Laravel API & Sanctum Authentication

📹 Laravel API Crash Course

now you must have basic understanding to the framework that could get you to the next level

API Documentation & Tools

📹  Postman - 1

📹  Postman - 2

Intermediate:

Master your editor

📹 Phpstorm

📹 Visual studio code

Read about Laravel best practices & Tips

📄 Laravel Best Practices Repository

📄 Laravel Tips Repository

Learn By Examples & Learn More

📄 Laravel Code Examples

🖇️ LaravelDaily Youtube Channel

Laravel Advanced Concepts

📹 Laravel Advanced - Coder's Tape

Mastring ORM: Paid

📹 Eloquent performance patterns

Laravel Testing

📹 Laravel Testing - LaravelDaily

📹 Laravel Testing - Laracasts

OR

📹 Laravel Testing

after you finish those try this framework for easier testing:

PEST framework:

📹 Learn PEST

📹 Learn PEST - Laracasts

Laravel package development

📹 Laravel Package Development

Useful laravel packages

📹 Laravel packages

Laravel Community and Ecosystem

List of People to Follow

Laravel News & Updates

Django & Python:

Beginner:

Python - Baiscs

📹 Python - Mosh - English

OR

📹 Pthon - FreeCodeCamp - English

OR

📹 Python - Codezilla - Arabic

📖 Learning Python, 5th Edition

Python - OOP

📹 Python OOP - FreeCodeCamp - English

Python - Projects

📹 Python Project Tutorial

📹 12 Beginner Python Projects

Django - Basics

📹 Python Django - Traversy Media

Django - Projects

📹 Build a Social Media App with Django

📹 How to Build an E-commerce Website with Django and Python

Intermediate:

Django - Testing

📹 Django Testing Tutorial

Django - ORM

📹 Django ORM Mastery Series -Very Academy

ASP.net & C#

Beginner:

C# - Baiscs

📹 C# - FreeCodeCamp - English

📹 C# - Mosh - English

OR

📹 C# - Hassouna Academy - Arabic

C# - OOP

📹 C# OOP - AvetisCodes - English

Asp.net - Basics

📹 C# Full Course - Learn C# 10 and .NET 6

📹 Introduction to ASP.NET Core MVC in C# plus LOTS of Tips - IAmTimCorey

ASP.net - Projects

📹 Create a C# Application from Start to Finish - IAmTimCorey

📹 Build an Expense Tracker with Asp.Net Core MVC

ASP.net - API

📹 ASP.NET Rest - Arabic

📹 Industry Level REST API using .NET 6 - Freecodecamp - English

Intermediate:

Useful ASP.net Package

📹 ASP.NET Core Toolkit/Packages/Labraries

Best Practices

📹 Best Practices for Building Async APIs with ASP.NET Core

ASP.net Testing

📹 ASP.NET Core C# - Unit Testing, Mocking, Integration Testing

ASP.net Different topics

📹 Getting Started with C# - IAmTimCorey

ASP.net Advanced topics

📹 Advanced Topics in C# - IAmTimCorey


Intermediate & Advanced General:

🔗 Dive Into More Computer Science Essentials

🔗 Write Great Software

🔗 Integration and Deployment

Dive Into More Computer Science Essentials:

More Data Structures and Algorithms

📹 Data Structures and Algorithms - MIT

More Database Systems

📹 Intro To Database Systems - CMU

📹 MySQL for Developers In Depth - English

📹 Advanced Database Systems - CMU

📖 Designing Data-Intensive Applications (book) - Graduate level)

📹 Designing data intensive applications chapter summary playlist - English

📹 Designing data intensive applications chapter summary playlist - Arabic

📹 NoSQL Database Tutorial

Operating Systems

📹 Operating Systems - Berkeley

Distributed Systems

📹 Distributed Systems University of Cambridge - Martin Kleppmann

📄 Lecture Notes

Web Application Security

📖 Web Application Security Book

Write Great Software:

Object-Oriented Analysis and Design

📖 Head First Object-Oriented Analysis and Design

Design Patterns & SOLID Principle
Books

📖 Head First Design Pattern 2nd Edition

Videos

📹 Mosh Design Pattern

📹 Arabic SOLID Principle

📹 Arabic Creational Design Pattern

📹 Arabic Structural Design Pattern

📹 Arabic Design Pattern

📹 Arabic PHP Design Pattern

📹 Head First Design Pattern As an English Playlist

Website

🖇️ Refactoring GURU Design Pattern

Articles & Repos

📄 SOLID Article - Digital Ocean

📄 Design Patterns - Repo

Clean Code & Refactoring

📖 Clean Code

📖 Refactoring To Patterns

📖 Martin Fowler

Integration and Deployment:

CI CD

📹 Continuous Integration And Continuous Delivery

Container

📹 Docker - Free Code Camp - English

📹 Docker - TechWorld with Nana - English

📹 Docker Practical Course - Arabic

Cloud

📹 AWS - Free Code Camp

Deployment

📹 Deploy on digital oceans

📹 Deploy on shared hosting


Interview Preparation:

Interview Questions

📹 Software Engineering Full Mock Interview - freeCodeCamp

🖇️ Backend Interview Questions - Fullstack Cafe

🖇️ Laravel Interview Questions - Guru99

🖇️ Laravel Interview Questions - Java Point

🖇️ Laravel Interview Questions - hackr.io

Resume & CV

Harvard resources

📄 Resume & Cover Letter Tips and Templates

📄 More Resume Templates

📄 Document on CVs and Cover Letters

📹 How to Write a Resume

Websites

🖇️ A GOOD Resume - Career CUP

🖇️InterviewBit: Coding Interview Questions

backend-roadmap's People

Contributors

mohamed20a avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.