Skip to content

Scoring Rubric - Linux & DevOps CLI

Score 0-1

  • Haven't used a Linux command line
  • Don't know basic file navigation (cd, ls, cat)

Score 2-3

  • Can navigate the filesystem, read/create files
  • Know basic commands: ls, cd, cat, grep, find, ps, top
  • Can install packages with apt/yum
  • Need to look up syntax frequently
  • Don't understand file permissions, processes, or services

Score 4-5

  • Understand file permissions (rwx, chmod, chown)
  • Can manage services (systemctl start/stop/status/enable)
  • Can write basic bash scripts (variables, loops, conditionals)
  • Can use pipes and redirection effectively
  • Know how to read logs (journalctl, /var/log/)
  • Understand processes, signals, and job control
  • "You are here if you can": write a bash script that checks disk usage and sends an alert, manage systemd services, and explain file permission octals

Score 6-7

  • Can troubleshoot boot failures, service failures, and performance issues
  • Understand package management, kernel modules, and system tuning
  • Can use strace, lsof, and perf for debugging
  • Know how to manage storage (LVM, mounts, fstab)
  • Can configure networking (ip, nmcli, firewall)
  • Can write non-trivial shell scripts with error handling
  • Know modern CLI tools (rg, fd, fzf, jq, bat)
  • "You are here if you can": troubleshoot a server that won't boot, use strace to debug a failing process, configure LVM storage, and build jq pipelines for JSON processing

Score 8

  • Can do performance analysis (CPU, memory, I/O, network)
  • Understand cgroups, namespaces, and how containers use them
  • Can build and customize kernel modules or initramfs
  • Can set up complex multi-service environments from scratch
  • Expert at log analysis and pattern recognition
  • "You are here if you can": diagnose a performance issue using /proc, understand container isolation at the kernel level, and automate complex operational tasks

Score 9

  • Deep kernel understanding (scheduling, memory management, I/O subsystem)
  • Can write and debug eBPF programs
  • Can recover from catastrophic system failures
  • Contribute to or maintain system-level tooling