Backend Merged
Backend Merged
Order in roadmap not strict (Learn anytime)
https : // roadmap.sh
I wouldn't recommend
Backend
How does the internet work? DNS and how it works?
Browsers and how they work? What is hosting?
Rust Go
Git
GitHub
PostgreSQL
MySQL OS and General Knowledge
Relational Databases
MariaDB
Basic Terminal Commands
MS SQL grep, awk, sed, lsof, curl, wget
tail, head, less, find, ssh, kill, dig
Oracle
How OSs work in General
NoSQL Databases
MongoDB InfluxDB
Memory Management
CouchDB TimeScale
ORMs Interprocess Communication
Document DBs Time Series
ACID
I/O Management
Firebase Cassandra
Transactions
Basic Networking Concepts
RethinkDB HBase
N+1 Problem
Threads and Concurrency
Realtime Column DBs
Normalization
Process Management
Failure Modes
Redis
Neo4j
Operating Systems Knowledge
Graph DBs
Profiling Perfor.
DynamoDB
Authentication REST
JSON APIs
Client Side
Cookie Based Redis
SOAP
Caching Server Side
OAuth
Memcached
Basic Auth
gRPC
CDN
Token Auth GraphQL
JWT Web Security Knowledge
MD5 and why not to use it
OpenID
SHA Family
SAML
Integration Testing
scrypt bcrypt
Unit Testing
Testing Hashing Algorithms
Functional Testing
GOF Design Patterns
Architectural Patterns Monolithic Apps
Domain Driven Design
Microservices
Test Driven Development
SOA
CQRS
Elasticsearch
Serverless
Event Sourcing
Solr
Service Mesh
Search Engines
Twelve Factor Apps
RabbitMQ
Kafka
Kubernetes
Docker
Message Brokers
Containerization vs Virtualization LXC
Server Sent Events
WebSockets GraphQL Apollo
Nginx
Relay Modern
Apache
Caddy
Graceful Degradation
Web Servers
MS IIS
Throttling
Backpressure
Loadshifting
Instrumentation
Building for Scale
Circuit Breaker
Monitoring
Mitigation Strategies
Telemetry
Coding Interview University
https : // roadmap.sh
OpenSource Society University - CS
Teach Yourself Computer Science
Computer Science Important Note / Click here
C++ Python
C Pick a Language Go
Java C#
Rust
Graph Heap
Tree
Common Runtimes
Bubble Sort
Constant
Binary Tree Directed Graph Selection Sort
Logarithmic
Binary Search Tree Undirected Graph Insertion Sort
Linear
Full Binary Tree Spanning Tree Heap Sort
Polynomial
Complete Binary Tree Representation Quick Sort
Exponential
Adjacency Matrix
Balanced Tree Merge Sort
Factorial
Adjacency List Sorting
Unbalanced Tree
Recursion
Graph Tree Common Algorithms
Tail Recursion
Breadth First Search Pre-Order Traversal
Non-Tail Recursion
Depth First Search In-Order Traversal
Search Pattern in Text
Bellman Ford's Algorithm Post Order Traversal Searching
Su#x Arrays
Dijkstra's Algorithm Breadth First Search Binary Search
Caches
Greedy Algorithms Back Tracking Substring Search
LRU Cache
Dijkstra's Algorithm Finding Hamiltonian Paths Brute Force Search
LFU Cache
Hu"man Coding Solving N Queen Problem Knuth-Morris Pratt
MFU Cache
Kruskal's Algorithm Maze Solving Problem Boyer-Moore
Architectural Patterns
Unicode ASCII
Dependency Injection
Usecase Diagrams
Statemachine Diagram
Basic Math Skills Complexity Classes
Sequence Diagrams
Probability Combinatorics
P NP Co-NP NP Hard
NP Complete P = NP Tries
OWASP Top 10
Intermediate Topics / Pick them next
Find the detailed version of this roadmap
Advanced Topics / Pick them in the end
along with resources and other roadmaps
Optional / Learn if you want
https : // roadmap.sh
C++
References / Additional Resources
Salmer’s C++ Roadmap
What is C++?
Installing C++
Introduction to the Language Why use C++?
Code Editors / IDEs
C vs C++
Running your First Program
Arithmetic Operators
Logical Operators
RTTI
Setting up your Environment
Loops: for/while
Operators
Dynamic Typing
Bitwise Operators
Lambda
Static Typing
weak_ptr
Basic Operations
Functions Data Types
shared_ptr
unique_ptr
References
Smart Pointers
Scope
Namespaces
Memory Leakage
Lifetime of Objects
Structuring Codebase
Overloading of Functions
Rule of Zero, Five, Three
Static Polymorphism
Object Oriented Programming
Structures and Classes
Dynamic Polymorphism
Virtual Methods Virtual Tables
Multiple Inheritance
Access Violations
Diamond Inheritance
static_cast
auto (Automatic Type Deduction)
Exceptions
const_cast
Type Casting
Exit Codes
Exception Handling
dynamic_cast
Undefined Behavior (UB)
reinterpret_cast
Argument Dependent Lookup (ADL)
Name Mangling Macros
Language Concepts
Iterators
iostream
Full Template Specialization
Variadic Templates
Algorithms
Date / Time Standard Library + STL
Partial Template Specialization Template Specialization
Multithreading
Containers
Type Traits
SFINAE Templates
RAII
Pimpl
CRTP
Non-Copyable/Non-Moveable
C++11/14
Erase-Remove Idioms C++17
Copy and Swap C++20
Copy on Write Newest
Standards C++0x
Understand Compiler Stages Language Tools
Compilers Debuggers Understanding Debugger Messages
Debugging Symbols
Di!erent Compilers and their Features
Clang++/LLVM
WinDBg GDB
Intel C++
CMAKE
MSVS C++
Makefile
vcpkg Spack
GCC
MinGW Ninja
Conan NuGet
Build Systems
Package Managers
Frameworks Libraries
gtest/gmock
Boost OpenCV
Working with Libraries
Qt
POCO protobuf
Library Inclusion
Catch2 gRPC
tensorflow
Licensing
Orbit Profiler
pybind11 spdlog
PyTorch C++
opencl fmt
ranges_v3
Backend Roadmap
CTFs (Capture the Flag) Find the detailed version of this roadmap
along with resources and other roadmaps
HackTheBox
VulnHub
picoCTF
Fundamental IT Skills
CompTIA A+ CompTIA Linux+ Understand Basics of Popular Suites iCloud Google Suite Microsoft O!ce Suite
Advanced Certifications
Operating Systems
CISSP CISA CISM Basics of Subnetting
GSEC GPEN GWAPT Public vs Private IP Addresses Learn following for Each
VMWare VirtualBox esxi proxmox VLAN DMZ ARP VM Installing Software and Applications
Troubleshooting Tools
Understand these
Basics and Concepts of Threat Hunting Cyber Kill Chain MFA and 2FA Understand Handshakes
Basics of Reverse Engineering Understand the Concept of Isolation Privilege escalation / User based Attacks
Penetration Testing Rules of Engagement Basics of IDS and IPS Honeypots Web Based Attacks and OWASP 10
Perimiter vs DMZ vs Segmentation Authentication vs Authorization Learn how Malware Operates and Types
Tools for Incident Response and Discovery Basics of Cryptography Attack Types and Di"erences
ipconfig hping ping arp cat dd PKI Pvt Key vs Pub Key Obfuscation Spam vs Spim Shoulder Surfing
head tail grep wireshark winhex Dumpster Diving Tailgating Zero Day
Understand Secure vs Unsecure Protocols
Understand Frameworks DNSSEC LDAPS SRTP S/MIME Impersonation Watering Hole Attack
ISO NIST RMF CIS CSF Firewall and Nextgen Firewall HIPS Common Network Based Attacks
Understand Common Distros for Hacking NIDS NIPS Host Based Firewall DoS vs DDoS MITM ARP Poisoning
SIEM SOAR ParrotOS Kali Linux Sandboxing ACL EAP vs PEAP Evil Twin DNS Poisoning Spoofing
Preparation Identification
Learn how to find and use these logs Bu"er Overflow Memory Leak XSS
MAC-based NAC-based Port Blocking Zero Day Known vs Unknown APT Stakeholders HR Legal Compliance
Understand concepts of security in the cloud Understand Cloud Services Common Cloud Environments
Go
JavaScript
C++
Power Shell
Find the detailed version of this roadmap
Personal Recommendation / Opinion along with resources and other roadmaps
Alternative Option - Pick this or purple
https : // roadmap.sh
Order in roadmap not strict (Learn anytime)
DevOps
Featured DevOps Resources
DevOps Bootcamp by Nana Paid
Python Ruby
KodeCloud DevOps Courses Paid
Learn a Programming Language
Go Rust
These are a"liate links. Revenue generated
from these help o!set roadmap.sh running costs.
JavaScript / Node.js
Windows
Ubuntu / Debian FreeBSD
SUSE Linux OpenBSD
Nginx
RHEL / Derivatives NetBSD
Tomcat
Editors Scripting Learn to live in Terminal
Apache
Vim/Nano/Emacs Bash Scripting
IIS
Process Monitoring
Power Shell
Reverse Proxy Web Servers
GitHub Performance Monitoring
Forward Proxy Caching Server
GitLab Networking Tools
Firewall Load Balancer
Bitbucket
Git Text Manipulation
What is and how to setup a _____? VCS Hosting Version Control Systems
FTP / SFTP DNS
LXC
AWS Google Cloud
HTTP HTTPS
Containers
Docker
Azure Digital Ocean
SSL / TLS SSH
Alibaba Cloud Linode
OSI Model
Heroku Vultr
Email
AWS CDK
White/Grey Listing
CloudFormation
Cloudflare AWS Lambda
SMTP DMARC
Pulumi
Azure Functions GCP Functions
IMAPS SPF
Terraform
Vercel Netlify
POP3S Domain Keys
Ansible
Gitlab CI Jenkins
Sealed Secrets
Configuration Management Chef
GitHub Actions Travis CI
Cloud Specific Tools
Puppet
Circle CI Drone
Vault SOPS
TeamCity
AppDynamics Datadog
Zabbix Prometheus
Infrastructure Monitoring
OpenTelemetry
Datadog Grafana
Application Monitoring
Elastic Stack Loki
AWS ECS / Fargate
Cloud Smith
Graylog Splunk
Docker Swarm
ArgoCD
Papertrail Kubernetes
FluxCD
Availability
Istio Consul
Data Management
Linkerd Envoy
Keep Learning
Roadmap was made in partnership
Find the detailed version of this roadmap
with Sid Palas. Checkout his free
along with resources and other roadmaps
course covering this topic in depth.
Docker https://roadmap.sh
Kubernetes Roadmap
DevOps Roadmap
Backend Roadmap
What are Containers?
Shell scripting
Union Filesystems
Programming Lanuage
Just get the basic idea of these.
Application Architecture
Web Development
Installation / Setup Docker Desktop ( Win / Mac / Linux)
Prerequisites
Docker Engine ( Linux )
Basics of Docker
docker run
Dockerfiles
Image Security
Images Containers
Volumes Networks
Debuggers Kubernetes
What is HTTP?
Accessibility
Browsers and how they work?
SEO Basics
Git
GitHub
JavaScript
GitLab
Bitbucket
We have trimmed down the CSS part for the sake of brevity.
However, I would recommend reading about CSS in JS,
React
CSS Modules, Styled Components, Vanilla Extract, Panda CSS npm
and look into di!erent frameworks with pre-built components Vue.js
pnpm
such as MUI, daisyUI, Chakra UI and Mantine.
Angular
yarn
Shadcn UI Rollup
Rollu
ESLint
Playwright
Web Security Basics CORS HTTPS Learn the di!erence between Unit, Integration,
and Functional tests and learn how to write
Cypress
Content Security Policy them with the tools listed on the right.
React Remix
HTML Templates
Angular Universal
Web Components Custom Elements
Vue.js Nuxt.js
Shadow DOM
Svelte Svelte Kit
Type Checkers TypeScript
Flutter
Mobile Applications
Bonus Content Desktop Applications
React Native
Flutter
Ionic
NativeScript
Continue Learning with following relevant tracks
Checkpoint — Deployment
Monit
Terraform
Checkpoint — Infrastructure
Backend Roadmap till Language Selection along with resources and other roadmaps
roadmap.sh/backend
http : // roadmap.sh
Java
DataStructures
Basic Syntax
Packages
Conditionals
Loops
Functions Working with Files and APIs
Exception Handling
Generics
Memory Management How JVM works?
Log4j2
Spring Data JPA ORM
EBean JDBC
"
! Advanced Topics / pick these after intermediate topics http : // roadmap.sh
JavaScript
"
! History of JavaScript Introduction to JavaScript "
! Variable Declarations "
!
"
! JavaScript Versions
"
! All About Variables Hoisting "
!
"
! How to run JavaScript? Variable Naming Rules "
!
"
! boolean null "
! "
!
"
! Data Types Object Built-in Objects "
!
"
! Symbol
typeof operator "
!
Primitive Types
Explicit Type Casting "
!
"
! Type Conversion vs Coercion Type Casting "
! Implicit Type Casting "
!
"
! Map
"
! Set
! Typed Arrays
" Arrays "
!
"
! Structured Data
"
! Weak Set
"
! JSON
isLooselyEqual "
!
"
!
isStrictlyEqual "
!
== === Object.is
"
! Equality Comparisons Equality Algorithms "
!
Value Comparison Operators
SameValueZero "
!
SameValue "
!
"
! for statement for...in statement "
!
"
! do...while statement for...of statement "
!
"
! while statement "
! Loops and Iterations break / continue "
! Labeled Statements "
!
"
! Conditional Statements "
! Control Flow Exception Handling "
! throw statement "
!
"
! Expressions and Operators Functions "
! Function Parameters "
! Default Params "
!
Arrow Functions "
! Rest Params "
!
"
! Assignment Operators
IIFEs "
!
"
! Comparison Operators
arguments object "
! Recursion "
!
"
! Arithmetic Operators
Scope & Function Stack "
! Lexical Scoping "
!
"
! Bitwise Operators
"
! BigInt Operators Function Borrowing "
! in a method "
!
"
! String Operators in a function "
!
Using (this) keyword ____ "
!
"
! Conditional Operators using it alone "
!
"
! Comma Operators Explicit Binding "
! in event handlers "
!
"
! Unary Operators in arrow functions "
!
call apply bind
"
! Relational Operators Event Loop "
!
"
! setTimeout Callbacks "
! Callback Hell "
!
Asynchronous JavaScript "
!
"
! setInterval Promises "
! async / await "
!
"
! Iterators and Generators Classes "
!
"
! CommonJS
Modules in JavaScript "
!
"
! ECMAScript Modules Memory Lifecycle "
!
"
! Memory Management
Garbage Collection "
!
"
! Using Chrome Dev Tools Debugging Memory Leaks "
!
Debugging Performance "
!
"
! Advanced Topics / pick these after intermediate topics Node.js http : // roadmap.sh
Global Installation
Common JS Creating Custom Modules
Modules Local Installation
ESM global Keyword
Installing Packages
Common Formats
npx
Updating Packages
Assertion Errors
Handling Async Errors
process.cwd() glob globby
setTimeout
process.nextTick
Commander.js Package
Nestjs framework
process.stdout process.stdin
Express.js framework
process.stderr Prompts package http module
http module
chalk package Inquirer package axios package
HTTP Server
figlet package unfetch package
jsonwebtoken package
ejs pug marko Templating Engines
Passport.js package
Knex package
Authentication
TypeORM package
Mongoose package
Sequelize package
Prisma package Document Working with Databases Relational
Prisma package
Native Drivers
forever Package
Garbage Collection
Threads
fs os net
process cluster
perf_hooks
crypto
Backend roadmap after Language Selection
Bu!er
Built-in Modules
Find the detailed version of this roadmap
Related Roadmaps along with resources and other roadmaps
Backend Roadmap
https : // roadmap.sh
DevOps Roadmap Backend roadmap till Language Selection
Software Design Roadmap
Important Note / Click here
Python
Basic Syntax Type Casting, Exceptions
Variables and Data Types Learn the Basics Functions, Builtin Functions
RegEx
Datastructures and Algorithms
Iterators
Decorators
PyPI Django
Pip Flask
Generator Expressions
gevent Asynchronous
Paradigms
aiohttp
Tornado
doctest
Sanic
nose
pytest
Order in roadmap not strict (Learn anytime)
React https : // roadmap.sh
I wouldn't recommend
Vite Class Components
Create React App CLI Tools Components Functional Components
Components Basics
Component Life Cycle
JSX
Lists and Keys
Recoil Props vs State
Rendering
Render Props
MobX
Conditional Rendering
Refs
Redux / Toolkit
Composition
Events
Zustand
Context High Order Components
Basic Hooks
useState
Emotion
React Router Writing Custom Hooks
Remix
Styled Components
Reach Router
Common Hooks
Next.js
useCallback useRef
Styling Mantine
useMemo
Frameworks
Tailwind
useReducer
Material UI
useContext .......
Chakra UI
Apollo
Relay
Jest Vitest
Urql
GraphQL
React Testing Library
Forms
API Calls Testing
REST
Cypress
React Hook Form
SWR
Playwright
Formik
react-query
Final Form
React Native
Axios
Suspense
superagent
Mobile Portals
Error Boundaries
Fiber Architecture
Advanced Topics
Frontend Roadmap
Other Relevant Roadmaps Find the detailed version of this roadmap
PostgreSQL Roadmap along with resources and other roadmaps
SQL
Truncate Table
Data Types
FROM WHERE
SELECT INSERT
ORDER BY GROUP BY
SELECT
Dropping Views
Scalar Column
Date and Time Conditional Data Integrity and Security Data Integrity Constraints
BEGIN
Stored Procedures and Functions
Managing Indexes
COMMIT
Indexes
Performance Optimization
Query Optimization
ROLLBACK
Using Indexes
Reducing Subqueries
Dynamic SQL