Updated: Jan 11
6 large companies that use Rust and the reasons for their choice
Loved by programmers and adopted by large companies, let’s see how Rust is winning in performance and safety. Hope it helps you to understand why Rust is so popular and loved right now.
Dropbox - Optimizing cloud file storage.
Since the engine is highly concurrent, writing, testing, and debugging is hard. Dropbox uses Rust for parts of its file synchronization engine since Rust’s static types and heavy compile-time checks give it an advantage over dynamically typed languages like Python when you need to tackle complex codebases and concurrent code.
Facebook - primary source control system is partially written in Rust.
Facebook was looking for a compiled language to rewrite its source control backend in and was attracted to Rust because of its safety benefits. Since then, Rust has been adopted by the source control team. As the reasons for adoption, they mention the huge cost of bugs for Facebook and the ease of the compiler feedback loop, in contrast to static analysis and code reviews.
Microsoft - experimenting with integrating Rust into its large C/C++ codebases.
The main argument is because of the memory safety that Rust provides, Microsoft determined that over half of the security patches pushed to computers are to fix memory-related bugs and believes that Rust would've been able to catch these bugs during the development phase. They tried various options to solve this issue, such as extensive developer training and static analysis tools. However, it seems like the only way out is to make these vulnerabilities impossible to do.
Amazon - writing highly performant, safe infrastructure-level networking and other systems software.
The Rust language has quickly become critical to building infrastructure at scale at Amazon Web Services (AWS), and they’re adapting models for parallel development to incorporate agility in the language.
AWS increasingly builds critical infrastructures like the Firecracker VMM using Rust because its out-of-the-box features reduce the time and effort needed to reach Amazon’s high-security bar, while still delivering runtime performance similar to C and C++.
Figma - rewriting their multiplayer syncing engine in Rust to keep up with user growth
The unpredictable latency spikes during syncing with the old server that was written in TypeScript and, being single-threaded, it couldn’t process operations in parallel. That meant a single slow operation would lock up the entire worker until it was complete.
Figma chose Rust for this rewrite because it combines best-in-class speed with low resource usage while still offering the safety of standard server languages. Which in particular, some of the performance issues with the old server were caused by the garbage collector.
Discord - uses Rust in multiple places of the codebase, both on the client and the server side.
The team used Rust and Elixir to scale to 11 million concurrent users through the use of Elixir NIFs (Native Implemented Functions). In this case, Rust enabled them to speed up their existing Elixir codebase while keeping everything’s memory safe.
They have also rewritten their Read States service in Rust (originally in Go). While the Go version of the service was fast enough most of the time, it sometimes had large latency spikes due to Go’s memory model and garbage collector. To solve that, Discord switched to Rust, which offers a unique memory allocation system that makes garbage collection unnecessary.
Future of Rust
Rust functions strictly better alternative for C – as you can already see a visible pattern of rewrites done in Rust to escape performance degradation in most of these big companies already. Especially, when developments needed that extra performance but want to avoid memory issues associated with C.
But Rust has far more benefits: it makes lower-level programming more accessible, has excellent support for WASM, and is fantastic for concurrency.
In the future, you can expect Rust usage to increase as more and more companies discover how it can improve their codebases and the development process.
Follow us on social media to receive more tech-related feeds!