Remote: Rapid Global Scaling and Reliability with Elixir
Remote is a global employment platform that enables companies to hire, pay, and manage remote workers anywhere in the world. Founded in 2019, it quickly achieved unicorn status, and as of the latest report, its engineering organization numbers nearly 300 people. From the very beginning, Remote faced the challenge of building a product that could support rapid growth, global complexity, and operational resilience, all while allowing teams to move fast and ship features.
To address these challenges, Remote’s founders chose Elixir as their core backend technology. They reasoned that Elixir’s blend of high performance, readability, and strong concurrency support would let them launch quickly without prematurely optimizing for scale. Their system is largely built as a monolith (backend in Elixir, frontend in React), which simplifies iteration in the early stages. As the codebase grew, they enforced modular boundaries using the Boundary library to keep domains clean and organized. For continuous integration, they introduced incremental builds so that only changed parts of their 15,000-file codebase are recompiled, dramatically reducing build times. On the infrastructure side, they run on AWS EKS with only five pods (each 10 GB), use Distributed Erlang for inter-node communication, and run background jobs with Oban alongside the monolith. Their database setup includes a primary PostgreSQL instance, read replicas, and a separate Aurora PostgreSQL instance dedicated to job storage. They also expose a public API which is configured to run a different supervision tree so it can scale independently.
The results speak for themselves: Remote has scaled to hundreds of engineers working in a single codebase without breaking modularity, and it handled unexpected load spikes (including a case where job processing volume jumped by two orders of magnitude) without manual intervention. Their robust test suite and functional architecture give engineers confidence to make sweeping changes safely. On the people side, while they prioritize senior engineers, Remote also invests in onboarding: new hires (even without prior Elixir experience) go through a 2–4 week internal training camp, paired with a buddy, and begin with carefully scoped tasks. This has enabled them to build and maintain a highly productive, Elixir-first engineering culture, proving that a rapidly growing, mid-to-large startup can adopt a niche functional language pragmatically and successfully.