This presentation explores some common application design patterns, tools, libraries, and optimizations used by Erlang developers for server application design in production systems. Erlang programmers have boasted about high concurrency, fault tolerance, and high scalability. However, using the language alone for this isn’t enough to guarantee any of these properties: you have to use it right and play to the platform’s strengths.