Erlang Developer – Distributed Systems
Role Overview
We are looking for high‐ownership engineers who do more than write code. This role requires individuals who can understand complex system problems end‐to‐end, take accountability for outcomes, and drive solutions from design to production.
You will work on large-scale, distributed, real-time backend systems where correctness, resilience, and performance directly impact live operations. Success in this role demands robust technical judgment, system-level thinking, and the ability to operate with ambiguity.
What This Role Expects (Beyond Coding)
Ability to understand problem statements deeply, ask the right questions, and propose technically sound solutions Ownership of services across their full lifecycle: design → implementation → deployment → monitoring → incident resolution Proactive identification of system risks, performance bottlenecks, and failure scenarios Willingness to make trade-offs, defend design decisions,
and improve systems iteratively Comfort operating in production-first environments where uptime and correctness matter Key Responsibilities
Design, build, and own distributed backend services using Erlang/OTP Model complex workflows using concurrency and message-passing primitives Design and maintain robust supervision hierarchies and fault-recovery strategies Build systems handling thousands of concurrent processes with predictable behavior Ensure production readiness: Observability (logging, metrics, alerts) Graceful degradation and recovery Safe deployment strategies Debug and resolve production incidents, including distributed failures Collaborate closely with cross-functional teams on system interfaces and behavior Continuously improve system reliability, performance, and maintainability Required Technical Skills
Core Expertise
Erlang with strong production experience OTP Framework Gen Server, Supervisor, FSM behaviors ETS and Mnesia Distributed Erlang Clustering Inter-node communication Handli