This follows Kamran Ahmed's Backend Developer Roadmap.
Guide to becoming an SRE or for any other operations role:
Learn a Programming Language
-
Doesn't matter which language
- Python
- Ruby
- Node.js
- Go
- Rust
- C / C++
Understand different OS Concepts
- Process Management
- Threads and Concurrency
- Sockets
- I/O Management
- Virtualization
- Memory / Storage
- File Systems
Learn about Managing Servers
-
Operating System
- Linux
- Unix
- Windows
-
Learn to live in Terminal
- Learn Bash Scripting
- Vim/Nano/PowerShell/Emacs
- Text Manipulation Tools
- awk, sed, grep, sort, uniq, cat, cut, echo, fmt, tr, nl, egrep, fgrep, wc
-
Process Monitoring
- ps, top, htop, atop, lsof
-
Network
- nmap, tcpdump, ping, mtr, traceroute, airmon, airodump, dig, iptables
-
Others
- strace, dtrace, systemtap, uname, df, history
Networking and Security
- DNS
- OSI Model
- HTTP / HTTPS
- FTP
- SSL / TLS
What Is and How to Setup a _
- Reverse Proxy
- Forward Proxy
- Caching Server
- Load Balancer
- Firewall
-
Web Server
- Apache
- Nginx
Learn Infrastructure as Code
-
Containers
- Docker
-
Configuration Management
- Ansible
-
Container Orchestration
- Kubernetes
-
Infrastructure Provisioning
- Terraform
Learn some CI/CD Tool
- Jenkins
- TeamCity
- Circle CI
Learn How to Monitor Software and Infrastructure
-
Infrastructure Monitoring
- Nagios
- Icinga
- Datadog
- Zabbix
- Monit
-
Application Monitoring
- AppDynamics
- New Relic
-
Logs Management
- ELK Stack
- Graylog
- Splunk
- Papertrail
Cloud Providers
- AWS
- Google Cloud
- Azure
- Digital Ocean
- Heroku