Skip to content

Mohamed20a/Backend-Roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 
ย 
ย 

Repository files navigation

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

Releases

No releases published

Packages

No packages published