Sonny Scroggin

Phoenix Core Team Member

Sonny Scroggin is an experienced software engineer with broad interests in the world of computing. He is best known for his contributions to the Phoenix Framework and other supporting libraries within the Elixir ecosystem. He can be found presenting or teaching others about Elixir, Phoenix, and other tools and libraries in the local user groups in Nashville, TN and at conferences around the world.

Upcoming conferences:

Sonny Scroggin
Code BEAM STO 2019

BEAM + Rust: A match made in heaven

The BEAM is well-known for its fault-tolerant properties. It's quite performant and memory efficient for many use-cases. But occasionally we find ourselves hitting the limits of what the BEAM can provide us. What happens when we need to interface directly with hardware? Or when a specific part of our application needs to be as fast as possible?

In this talk Sonny will introduce the audience to Rust - a systems programming language that aims to empower everyone to build reliable and efficient software - and the various methods that can be used to integrate with it from the BEAM.


Demonstrate the flexiblity of the BEAM when integrating with the outside world. Introduce the audience to the Rust programming language and the benefits it provides.


Anyone who wants to learn about Rust and how use it within BEAM-based applications.

Past conferences

Sonny Scroggin
Code BEAM STO 2018
Tutorial/ 30 May 2018
13.30 - 17.00

Introducing Phoenix


Phoenix is an Elixir framework for building scalable web applications with realtime connectivity across all your devices. Together, we’ll take a guided tour of the framework, going from the very basics, to building our own realtime applications. You’ll see the framework’s foundations, core components, and how to use Phoenix to write powerful web services.

We’ll start by exploring the foundations of the framework in Elixir’s Plug library, followed by the core components of Phoenix’s Router and Controller layers. Next, we’ll review the View layer and build an application together as we learn each concept. We’ll finish by using the PubSub layer to add realtime functionality to our application. Along the way, attendees will see how to apply advanced features like router pipelines and plug middelware and receive tips on how to structure a Phoenix application for real-world services.

Sonny Scroggin
Code BEAM STO 2018
31 May 2018
16.25 - 17.10

Taking it to the metal

As it turns out, Erlang or Elixir aren't the fastest kid on the block. And while raw CPU speed matters little for most applications, there does exist a couple reasons you might want want to reach for tools that give you access to native power.

In this talk we will discuss Native Implemented Functions (NIFs) - Erlang's Foreign Function Interface (FFI).

NIFs are normally implemented in C and are considered dangerous. But we're going to explore writing safer NIFs in Rust - a new systems programming language developed by Mozilla, that focuses on memory safety.

We'll talk about the pitfalls with writing NIFs and how Rust can make this process easier and safer.


This talk is intended to show how to build performance-critical functionality in Erlang/Elixir with Rust. Because of the unique way the Erlang VM operates, there are many pitfalls you must be aware of when writing native code. This talk exposes these pitfalls and offers direction to those interesting in writing native code for the Erlang VM.