Resource-constrained environments. Small memory footprint. Single binary deployment. Good for embedded and containers.
Long-running services. No memory leaks from GC cycles. No runtime degradation over time.
Codebases that need to last. Strong type system and compiler checks make large refactors safe.
When to Use Something Else
Rapid prototyping. Python or JavaScript get a prototype running faster. Rust's compiler slows the iteration cycle.
Simple CRUD APIs. Go, Python, or Node.js are faster to write and easier to staff. Rust's safety guarantees are overkill for a simple REST API backed by a database.
Teams without Rust experience. Rust takes 3–6 months to learn productively. If your team does not have that time, use what they know.
Scripting and automation. Python, Bash, or Go are better suited. Rust's compile step adds friction.
Machine learning. Python dominates. Rust's ML ecosystem is nascent.
Mobile apps. Kotlin (Android) and Swift (iOS) have better tooling and ecosystem. Rust is used for shared native libraries, not full apps.
Honest Trade-offs
What Rust Costs You
Compile time. Large Rust projects compile in minutes, not seconds. This is the top complaint.
Learning curve. Ownership and borrowing are unique to Rust. Expect 3–6 months to become productive.
Ecosystem maturity. Growing fast but smaller than Java or Python. Some domains lack mature libraries.
Hiring. Fewer experienced Rust developers. You may need to train.
What Rust Gives You
Correctness. The compiler catches bugs that would reach production in other languages.
Performance. Consistently fast with no GC pauses. Benchmark results comparable to C and C++.
Refactoring confidence. If it compiles after a refactor, it probably works. The compiler is a safety net.
Operational simplicity. Single binary, no runtime dependencies, small Docker images.
Decision Framework
Question
If yes, consider Rust
Do you need predictable low latency?
Yes
Are memory safety bugs a serious concern?
Yes
Is the service long-running and hard to restart?
Yes
Does your team have (or want to build) Rust expertise?
Yes
Do you need a prototype by next week?
No — use Python or Go
Is the project a simple CRUD app?
No — use Go or Node.js
Is hiring Rust developers a blocker?
No — use what your team knows
Next
You now understand what Rust is and when to use it. The next module (01-first-code) gets you writing actual Rust code.