Talks and workshops on scalable systems, fintech architecture, and the BEAM. Delivered at Code BEAM, Æternity Universe, and other technical conferences worldwide.
All Talks & Presentations
Erik Stenman and The BEAM Book
A 55-minute interview where Erik Stenman discusses his work on "The BEAM Book" and his personal journey with the Erlang VM. He shares stories from programming since the 1980s and insights from the evolution of the BEAM, giving listeners a candid look at the past and future of the Erlang runtime.
Building Fintech Systems That Stay Fast and Stay Compliant
When payment systems break, you face regulatory fines and lost customer trust. This talk covers practical patterns for building fintech backends that handle millions of transactions without failing. Learn how to implement ledgers, typed money, and Merkle proofs using BEAM primitives. Includes live code demonstrations of append-only accounting, crash recovery with the heir pattern, and cryptographic state verification. Real-world insights from scaling Klarna's payment infrastructure.
30 Years On and In the BEAM: A Technical Deep Dive
A retrospective technical exploration of 30 years of the BEAM virtual machine, examining its groundbreaking concurrency model and fault-tolerant architecture. Includes real-world insights from Klarna to show how BEAM's design principles enable efficient, robust concurrent systems.
30 Years On and In the Beam: Mastering Concurrency
Keynote talk exploring the BEAM's evolution over three decades with a focus on its concurrency model and lessons for building fault-tolerant, scalable systems. Discusses the progression from Erlang's early VM implementations to modern BEAM, with guidance on designing concurrent programs (process isolation, scheduling, memory, etc.) for the future.
Sophia: Avoiding Smart Contract Pitfalls
Focuses on the Sophia functional language for Æternity smart contracts, a typed Erlang-inspired DSL designed to minimize runtime errors and security issues through static checks and strong type inference. Thomas Arts and team, with Erik Stenman credited as architect. Duration 19 min.
FATE: A Type-Safe High-Level Virtual Machine for Æternity
A deep dive into FATE (Fast Æternity Transaction Engine), the typed VM running smart contracts on Æternity. Covers its architecture, type system, data structures, and compilation from the Sophia language, demonstrating how BEAM principles inform its design. Duration 24 min.
Driving the Blockchain
Explains the deployment and maintenance of the Æternity blockchain network, covering automation, DevOps, and scaling decisions made by the core infrastructure team to ensure performance and uptime. Erik Stenman participated in the architecture overview. Duration 21 min.
Æternity: Scalable Smart Contracts Interfacing With Real World Data
Introduces the Æternity blockchain, an Erlang-based platform focusing on state channels, oracles, and off-chain scalability. Erik explains how BEAM's concurrency model supports reliable smart-contract execution and shows concrete design patterns for safe contract development. Duration 26 min.
BEAM: What Makes Erlang BEAM?
An overview of how the Erlang VM (BEAM) works and why it enables highly scalable, available, and robust systems. This talk breaks down the components of the Erlang runtime and highlights the VM features (like schedulers, isolation, etc.) that support efficient concurrent programming.
Abstraction Considered Harmful (and other opinions about writing maintainable code)
A reflection on how abstraction and frameworks, though tempting, can undermine maintainability. Focuses on readable code, long-running systems, and lessons from years of maintaining rather than just writing code. Erik reflects on decades of coding, showing examples of good abstractions versus bad ones.
Erlang Engine Tuning: Part IV – Tuning
In this advanced talk, Erik builds on the previous "Engine Tuning" series to demonstrate profiling and optimization techniques for the Erlang runtime. It covers how to use tracing and monitoring tools to tune the VM (ERTS) and find optimal settings for garbage collection, scheduling, memory, and other runtime parameters.
VM Tuning, Know Your Engine – Part III: The Scheduler
A deep dive into how the Erlang scheduler works under the hood. This talk explains the design of BEAM's scheduler and discusses problems you might encounter (scheduler collapse or imbalance). Listeners gain understanding of scheduler internals and learn to recognize and avoid pitfalls in the current implementation.
VM Tuning, Know Your Engine – Part II: The BEAM
Continuation of the series on BEAM internals. This talk examines the BEAM instruction set and how the BEAM interpreter executes Erlang code. By peeking under the hood of the Erlang runtime, Erik shows how bytecode is executed and prepares developers to read generated BEAM code.
Erlang Engine Tuning: Part I – Know Your Engine
The first in a series of talks unveiling the internals of the Erlang runtime system (ERTS). It covers how to generate and read BEAM bytecode, how Erlang processes are represented in memory, the basics of the BEAM virtual machine instruction set, and how memory and garbage collection are handled. After this talk, attendees understand the low-level execution of their Erlang programs and how to start tuning the VM.
Erlang Scales – Do You?
Drawing from his experience as Klarna's Chief Scientist, Erik discusses what it takes to scale a tech company rapidly. He shares Klarna's journey from 3 founders to 600+ employees and millions of users in 7 years, outlining four key ingredients for scalability, the right business model, the right technology, the right people, and the right amount of process. The talk is rich with anecdotes on scaling systems and teams, highlighting how Erlang's technology played a role but organizational scaling was equally crucial.
Seventh International Erlang/OTP User Conference
Conference participation with Erik Johansson listed in participant proceedings. Continued engagement with the Erlang community during the HiPE project era.
Efficient Implementation of Concurrent Programming Languages
Ph.D. dissertation on efficient implementation of concurrent programming languages, reflecting academic work on Erlang/OTP and concurrency. This comprehensive work builds on the HiPE project and explores optimizations for concurrent functional languages.
Linear Scan Register Allocation in a High-Performance Erlang Compiler
Focuses on register allocation strategies (linear scan) for an Erlang native-code compiler. Important for optimizing performance for dynamic concurrent functional languages. Authors E. Johansson, M. Pettersson, K. Sagonas.
A High Performance Erlang System
Presents the HiPE system integrated with Erlang/OTP, including design decisions, experiments, and performance evaluation in a realistic telecom context. Authors E. Johansson, M. Pettersson, K. Sagonas.
HiPE: High Performance Erlang
A detailed design and implementation of the HiPE native-code compiler for Erlang, showing how native compilation can significantly boost performance of Erlang programs. Authors Erik Johansson, Sven-Olof Nyström, Mikael Pettersson, Konstantinos Sagonas.
Fifth International Erlang/OTP User Conference
Early conference participation representing Uppsala University during the HiPE project development. Erik Johansson listed as attendee in conference proceedings.
Speaking Engagements
For speaking inquiries or to request Erik Stenman for your conference or event, contact us.