[Backend Dev] #1 Backend Roadmap
Roadmap of Backend Development
- Internet
- How does the Internet work?
- WHat is HTTP?
- Browsers and how they work?
- DNS and how it works?
- WHat is Domain Name?
- WHat is hosting?
- Basic Frontend Knowledge
- HTML
- CSS
- JavaScript
- OS and General Knowledge
- Terminal Usage and Basic Commands
- How OSs work in General
- Process Management
- Threads and Concurrency
- Memory Management
- Interprocess Communication
- I/O Management
- POSIX Basics
- Basic Networking Concepts
- Language
- JavaScript
- Java
- Python
- +a C#
- Version Control System
- Basic Usage of Git
- Repo Hosting Service - GitHub
- Relational Databases
- PostgreSQL
- MySQL
- More about Databases
- NoSQL Databases: MongoDB
- ORMs
- ACID
- Transactions
- N+1 Problem
- Datbase Normalization
- Indexes and how they work
- APIs
- REST
- JSON APIs
- Authentication
- OAuth
- Basic Authenticatoin
- Token Authentication
- JWT
- Caching
- CDN
- Server Side
- Redis
- (Memcached)
- Client Side
- Web Security Knowledge
- Hashing Algorithms
- MD5 and why not to use it
- SHA Family
- scrypt / bcrypt
- HTTPS
- Content Security Policy
- CORS
- SSL/TLS
- OWASP Security Risks
- Hashing Algorithms
- Testing
- Integration Testing
- Unit Testing
- Functional Testing
- CI/CD
- Design and Development Priciples
- SOLID
- KISS
- YAGNI
- DRY
- Architectural Patterns
- Monolithic Apps
- Microservices
- SOA
- Serverless
- Search Engines
- Elasticsearch
- (Solr)
- Message Brokers
- RabbitMQ
- (Kafka)
- Containerization vs Virtualization
- Docker
- GraphQL
- Apollo
- (Relay Modern)
- (Graph Databases - Neo4j)
- Web
- WebSockets
- Web Servers
- Nginx
- (Apache)
- Building for Scale
- Mitigation Strategies
- Graceful Degradation
- Throtting
- Backpressure
- Loadshifting
- Circuit Breaker
- Migration Strategies
- Horizontal vs Vertical Scaling
- Building with Observability in mind
- Mitigation Strategies
Reference: https://roadmap.sh/backend