Why Rust and Go Are Taking Over DevOps Tools (Goodbye Python scripts)

The era of the 'bash script' is ending. Why compiled, memory-safe languages are the new standard for infrastructure tooling.

J
Jesus Paz
2 min read

For nearly a decade (2010-2020), DevOps was synonymous with Python, Ruby, and Bash. Ansible is Python. Chef/Puppet are Ruby. Every sysadmin had a folder of cleanup_logs.py.

But check the GitHub stars today. The new titans of infrastructure—Kubernetes, Docker, Terraform, Prometheus, Cluster Uptime—are almost exclusively written in Go. And the cutting edge tools—Firecracker, Linkerd, uv—are written in Rust.

What happened? Why did the industry shift?

1. The Deployment Problem: “Where is pip?”

Python is fantastic until you try to run it on a production server.

  • “Error: Missing module ‘requests’”
  • “Error: Python 2.7 is deprecated, please install 3.9”
  • “Error: Conflicting dependencies in site-packages”

Managing the environment to run the tool becomes harder than the tool itself.

The Go/Rust Solution: Static Binaries. You compile the code on your laptop. You get a single file (e.g., cluster-uptime). You scp it to the server. It runs. It doesn’t care what OS version is installed. It doesn’t need pip. It just works.

2. Performance at Scale

Checking the disk usage of 1 server is easy in Python. Checking 10,000 servers concurrently?

  • Python’s Global Interpreter Lock (GIL) prevents true parallelism on multi-core CPUs.
  • Go’s Goroutines allow massive concurrency.
  • Rust’s memory model allows concurrency without data races.

Tools became “Agents” that run 24/7. An agent consuming 50MB of RAM (Python) vs 5MB (Go/Rust) is a dealbreaker at fleet scale.

3. Go vs Rust: Which should you pick?

If you are building an internal CLI or a network service? Pick Go. (Like we did for Cluster Uptime).

  • Pros: Fast compile times, incredible standard library for HTTP/Networking, easy to learn (you can learn it in a weekend).
  • Cons: Garbage Collector (GC) causes tiny pauses (acceptable for 99% of tools).

If you are building a kernel module, a database engine, or something embedded? Pick Rust.

  • Pros: Zero GC (deterministic performance), Memory Safety enforced at compile time, very strict type system.
  • Cons: Steep learning curve (“Fighting the Borrow Checker”).

Summary

The “Scripting Era” of DevOps is fading. The “Engineering Era” involves building robust, typed, testable binaries that treat infrastructure software with the same rigor as product software.

If you are a DevOps engineer looking to level up in 2026: Learn Go.

👨‍💻

Jesus Paz

Founder

Read Next

Join 1,000+ FinOps and platform leaders

Get uptime monitoring and incident response tactics delivered weekly.