Workshop Intermediate hybrid

The BEAM for Developers

Apr 22

This is a full-day, hands-on introduction to the Erlang Runtime System and the BEAM virtual machine. The course focuses on how the runtime works in practice: processes, message passing, memory management, garbage collection, and scheduling. These mechanisms determine how BEAM systems behave under load, during failures, and over long runtimes.

The goal is to give you a correct mental model of the VM so you can reason about performance, reliability, and system behavior without guesswork.

What we cover:

  • Thinking in Processes — How to structure systems as many small, isolated processes that communicate through messages. We use the Gnome Village model to reason about responsibilities, failure isolation, and supervision.
  • Data Types and Messaging — How data is represented in the BEAM. How process heaps work. What actually happens when messages are sent between processes, including copying, binaries, and references.
  • Memory and Garbage Collection — Per-process heaps, generational garbage collection, binary handling, and common sources of memory growth. How to spot and avoid long-term memory problems.
  • Scheduling and Concurrency — Reductions, run queues, and SMP schedulers. How the BEAM balances throughput and latency, and why some workloads behave predictably while others do not.
  • Debugging and Observability — How to inspect live systems using built-in tools. We work with tracing, profiling, and runtime inspection using tools such as Observer and Recon.
  • Patterns and Anti-Patterns — Designs that cause problems in real systems: overloaded mailboxes, large binaries in messages, centralized processes, and hidden bottlenecks.

Format: The day alternates between short theory sections and practical exercises.

Requirements: Laptop with the BEAM and your preferred language installed.

Target Audience

Developers working with Elixir, Erlang, Gleam, or other BEAM languages who are comfortable writing basic BEAM code and using OTP. No prior knowledge of runtime internals is required.

April 22 , 2026

Venue

NH Málaga

C. San Jacinto 2
Málaga, Andalusia, 29007, Spain