What
Roadmap for Beginners to Start Working in DevOps
This guide aims to provide the bare minimum information needed for a person to start working in DevOps.
Note: This is based on my perspective and may occasionally be incorrect.
Why
There’s many DevOps Roadmaps available online but they all more complex and suggest learning more skills than what is required to start working (especially if you’re developer) also they all lack Arabic resources
Reference
DevOps Roadmap: Learn to become a DevOps Engineer or SRE
Things Might Help
- Registering for Tilde Server and play with it
- Sticking to use Terminal for many things as possible
- most of the time server you have access to don’t have a GUI
- you will realize you can do much in terminal
- Web Browser
- File Manager
- Document Readers
- Advanced Code Editing
- Using Linux as you main OS
Roadmap
First Phase
- DevOps Concepts
- What’s DevOps
- DevOps Role
- Type of Daily Tasks
- OSs Concepts
- Linux
- Windows
- Network
- Basic Concepts
- OSI Model
- Protocols
- NAT
- Load Balancers
- Tools
- Version Control (VC)
- Git
- GitHub and what’s the difference with Git
- Branching Strategies
- Version Control (VC)
- Containerization
- Docker
- Docker Compose
Second Phase
- DevOps Concepts
- GitOps
- Continuous Integration/Continuous Deployment (CI/CD)
- Why it’s important
- Overview over available tools
- Infrastructure as Code (IaC)
- OSs
- Package Managers
- Scripting
- Shell
- PowerShell
- System Storage and File systems
- Managing and Debugging System Network
- Manage Processes
- Networking
- Domain Name System (DNS) and how it works
- VPNs and their usage
- Network Security and Firewalls
- Tools
- Nginx or IIS
- nano or vim for quick server edits
- Containerization
- Managing Container Network
- Multi-Stage Build
- Docker Layers and Caching
- Cloud
- Cloud Concepts
- Cloud Models
- Infrastructure as a Service
- Software as a Service
- Platform as a Service
- Deployment Models
- Privet Cloud (On-premises)
- Public Cloud (Traditional Cloud like AWS, GCP)
- Hybrid Cloud (Combination of Both)
- Basics of any cloud provider (AWS preferably)
- Cloud Networking
- Cloud Virtual Machines
- Database
Third Phase
- DevOps Concepts
- Configuration Management
- Release Strategies
- OSs
- Difference between Linux Distro
- Networking
- Content Delivery Network (CDN)
- Understanding HTTP/HTTPS
- SSL/TLS and Certificates
- SSH
- Connecting VS Code to a Remote Server
- Continuous Integration/Continuous Deployment (CI/CD)
- How to create a simple pipeline
- Difference between CI, CD and CT
- Improve Release Process
- Static Code Analysis
- TruffleHog
- Semgrep
- SonarQube or SonarCloud
- Static Code Analysis
- Monitoring
- What’s Logs, Metrics and Traces
- Cloud Montoring Solution
- AWS CloudWatch
- Google Cloud Monitoring
- Azure Monitor
Advanced
- Advanced Topics
- Secret Management
- Cloud Design Patterns
- Availability
- Data Management
- Design and Implementation
- Management and Monitoring
- Containerization
- Kubernetes
- Docker Swarm
- Infrastructure as Code
- Terraform
- Ansible
- Monitoring
- Prometheus
- OpenTelemetry