Michal Muskala

Elixir Core Team Member

Software engineer, open-source developer, speaker and trainer. Michał is an Elixir Core Team Member focusing on the functional side mostly. An Elixir and Ecto core team member, he maintains and contributes to multiple open source projects, including the Elixir database library, Erlang compiler and the BEAM (Erlang's virtual machine).

When not programming he enjoys reading, travelling, and sailing - no matter if sunny, rainy or stormy. It's even better if all of those are combined!

Past conferences

Michal Muskala
Code BEAM Lite Amsterdam 2018
30 Nov 2018
14.05 - 14.45

What actually is the BEAM?

At this conference, we're surrounded by the word "BEAM". A quick exploration will reveal it has to do with how Erlang code is executed and is the secret sauce uniting all of us - Erlang, Elixir, LFE, Efene and others. But do you really know what it is? In this talk, Michal will carefully explore the BEAM, both the runtime and the compiler. We'll see how they relate, what particular strengths this gives to our code and how we can leverage it from the applications we write every day in Erlang and Elixir. Finally, we'll see how the BEAM is similar and different to other environments and languages like Java's JVM, C#'s CLR or Lua.

Michal Muskala
Code BEAM Lite Berlin 2018

Getting distributed with Firenest


In the Elixir world, we have a lot of great libraries for many things - ExUnit for testing, Plug for web and Phoenix for realtime communication to name a few. Unfortunately, when it comes to distributed systems, it's a bit of a wild west with many small, competing solutions of varied quality.

Firenest is an attempt to close this gap by providing high-quality, ready-made components for building distributed systems in Elixir. The project is primarily built on extracted parts of the Phoenix framework with some improvements applying lessons-learned from running them in production at scale.


In this talk, you're going to learn about the Firenest project, the abstractions it provides, what it enables and how it's used within the Phoenix framework itself.

Michal Muskala
Code BEAM STO 2018
31 May 2018
11.35 - 12.20

Optimizing for the BEAM

The BEAM is a wonderful piece of technology that we all love and use daily when writing our programs - no matter the language!

For the past year, Mikhal has worked on optimising a couple of open source libraries, building performance-focused applications and contributing several optimisations to the Erlang compiler and the BEAM runtime. During this presentation, he'll share his discoveries and what he has learned.

He'll explore some common techniques for optimising programs running on the BEAM, applicable to Erlang, Elixir and LFE. He'll show us what tools can be used to evaluate performance and discover bottlenecks. He'll then talk both about how these problems can be solved - both by optimising the pure functional parts, leveraging the knowledge of BEAM innards, and by optimising concurrent programs around processes.


In this talk, the audience will learn about:

  • tools for evaluating the performance of BEAM programs
  • techniques for pinning down particular efficiency issues
  • common techniques for optimising functional programs and concurrent applications
  • possible future changes to the runtime and compiler focused around performance