Roadmap
Step by step guide for DevOps or any other Operations Role. This document was prepared as a starting point for TinkerHub DevOps Bootcamp
See roadmap.sh for a detailed roadmap
Devops roadmap
  • ✅ - Learn this at this step
  • 🟢 - Learn this, not necessarily now
  • 🟡 - Learn this, but not mandatory to start with

✅ Learn a Programming language

You can pick a programming language of your choice. All you need is some programming knowledge for automation. Since I am coming from a Python background, I'm listing some Python resources here.
Some other options are -
  • Go
  • Rust
  • C
  • C++
  • Ruby
  • Node.js

✅ Learn a version control system (VCS)

🟢 Understand different OS concepts

✅ Learn about Managing Servers

This is one of the main tasks DevOps engineers are entitled to do. Knowing how servers work and how to manage them is must-have knowledge.

✅ Operating Systems

✅ Learn to feel home at the Terminal

  • Compiling from source (gcc, make etc)
  • Text Manipulation (awk, sed, grep etc)
  • Process Monitoring (ps, top, htop, lsof etc.)
  • Network (nmap, ping, traceroute, dig etc.)
  • System Performance (nmon, iostat, vmstat etc.)
  • Others (df, history, uname etc.)

✅ Networking, Security and Protocols

  • HTTP
  • HTTPS
  • FTP
  • SSL/TLS
  • SSH
  • Port forwarding
  • Emails (SMTP, IMAPS, POP3S, DMARC, SPF, Domain keys etc)

✅ How to setup a Web Server

Other options are :
  • IIS
  • Apache
  • Tomcat
  • Caddy

✅ How to setup a Reverse Proxy

  • Using Nginx

🟡 How to setup a Forward Proxy

🟢 How to setup a Caching Server

🟢 How to setup a Load Balancer

🟡 How to setup a Firewall

✅ Cloud Providers

Other options are:
  • Google Cloud
  • Azure
  • Heroku
  • Digital Ocean
  • Linode
  • Vultr

✅ Learn CI/CD Tools

  • Jenkins
  • Gitlab CI
  • Github Actions
  • Circle CI
Other options are:
  • Travis CI
  • TeakCity
  • Bamboo
  • Azure Devops

✅ Learn Infrastructure as Code

✅ Containers

Other option:
  • LXC

✅ Configuration Management

  • Ansible
Other options:
  • Chef
  • Salt
  • Puppet

✅ Container Orchestration

Other options:
  • Mesos
  • Docker Swarm
  • Nomad

✅ Infrastructure Provisioning

Other options:
  • Pulumi

✅ Learn how to monitor software and infrastructure

✅ Infrastructure Monitoring

  • Prometheus
  • Grafana
Other options:
  • Nagios
  • Zobbix
  • Monit
  • Datadog

✅ Application Monitoring

  • Gaeger
  • New Relic
Other options:
  • AppDynamics
  • Instana
  • OpenTracing

✅ Logs Management

Other options:
  • Graylog
  • Splunk
  • Papertrail

✅ Cloud Design Patterns

  • Availability
  • Data Management
  • Design and Implementation
  • Management and Monitoring
And Keep Learning
Copy link
On this page
✅ Learn a Programming language
✅ Learn a version control system (VCS)
🟢 Understand different OS concepts
✅ Learn about Managing Servers
✅ How to setup a Web Server
✅ Cloud Providers
✅ Learn CI/CD Tools
✅ Learn Infrastructure as Code
✅ Learn how to monitor software and infrastructure
✅ Cloud Design Patterns