Big Data Moscow 2018


Máté Marjai

The Payment Works, Ireland


Máté Marjai is the Director of Engineering at The Payment Works, building the world’s largest payment gateway simulator: Testing Pays. He’s been working with BEAM-based technologies (Erlang and Elixir) since 2012.


Managing High Load on Low Budget

Managing spikes of increased traffic, or constant load shouldn’t be a matter of money. Thanks to revolutionary ideas from 30 years ago(!) you can build systems on a shoestring budget that can handle 10000+ requests per second on small machines. We’ve done exactly that, building a platform that can handle 1000s of API requests, on tiny instances with Erlang and Elixir, thanks to their underlying BEAM virtual machine. The presentation will show you how as well as why you should (or shouldn’t) consider these technologies for your own systems.


Traffic Management with Elixir

Learn the basics of traffic management (literally and figuratively) with a fun day of Elixir! We’ll get familiar with the syntax of Elixir, how to get started in general with a new language. Along the way we’ll touch on the origins of Elixir, and basics of Erlang OTP.

The first half of the day will be spent on simple solutions and techniques that will be used later in our masterpiece! We’ll learn about functional programming, pattern matching, how to package up your Elixir programme, etc.

The second half of the day will be about writing an OTP application that can handle incoming traffic at small and large scale. We’ll use all that we learnt on the first half of the day in a practical example app.


  • Get familiar with Elixir, the tooling, syntax and functional programming in general
  • Solve a 2-4 simple problems to get started and get your bearings
  • Introduction to processes and OTP (gen_server in particular)
  • Get started on our main program – a traffic management simulation
  • Work on our MVP
  • Looking for scale
  • Embed our program in an OTP application


The main goal is to have fun, and learn something during the day! Getting immersed in a new language (and paradigm) can be daunting, so we’ll take it in small steps, starting from the basics

We’ll learn about Elixir’s syntax, how to get started with its tools (mix) and the basics of functional programming.

We’ll also learn about Open Telecoms Platform (OTP), and how that can be used in the real world to manage & process messages (requests) in a simple yet effective manner.

At the end of the day we will finish writing an application using all of the above, showing you how Elixir can be effective & elegant dealing with increasing requests.

Target audience

The workshop is beginner friendly, mainly aimed at people who are starting with Elixir, or simply interested in it. No previous experience in Elixir, Erlang or Functional programming is required.
Advanced users are welcome too to refresh their knowledge.

Technical requirements

Install Elixir following the instructions here: Make sure you do this before the workshop day so we don’t rely on the network at the room, etc.

Get a notebook and your thinking cap on so you can note down important bits and pieces during the day.

Date: October 10-11, 2018