June 9, 2023

Brooklyn, New York

Early bird tickets are on sale now until May 15.

A one day, single-track Elixir conference in New York City ๐Ÿ—ฝ

The premier regional Elixir conference is back in our beloved New York home after a 4 year hiatus. For this year's conference, we're taking a trip across the East River and hosting in Brooklyn for the first time.

EMPEX NYC is a one day, single track programming conference in Brooklyn, New York, dedicated to the Elixir programming language and ecosystem. We bring together excellent technical content in an intimate venue, elevating the typical conference experience.

Brought to you by the same team that has previously hosted

Speakers & Schedule


Image of Heidi Howard ๐Ÿ‡ฌ๐Ÿ‡ง

Making the impossible possible: Building distributed systems worthy of our trust

Heidi Howard ๐Ÿ‡ฌ๐Ÿ‡ง

This talk will consider whether we can trust distributed systems to behave as we expect and to be available to us when we need them. We'll take a whistle-stop tour of the academic literature, visiting key results on what's possible, and more importantly, what's impossible, in the context of distributed computing. We will then see how this research has shaped how we reason about and build resilient distributed systems today. We'll look ahead to some up-and-coming trends, including trusted hardware and decentralization, to see how we can re-imagine today's systems and whether these technologies hold the key to circumventing the impossibility results in distributed systems and finally making the impossible possible.

About Heidi

Heidi is a senior researcher in the Azure Research Group at Microsoft. Heidi's research sits at the intersection between the theory and practice of distributed computing, with a focus on developing resilient and trustworthy distributed computer systems. Heidi is also a visiting researcher at the University of Cambridge, where she was previously a research fellow & affiliated lecturer in Computer Science and where she received her Ph.D. in 2019 for her research on distributed consensus.

Image of Andrea Leopardi ๐Ÿ‡ฎ๐Ÿ‡น

BEAM: The Perfect Fit for Networks

Andrea Leopardi ๐Ÿ‡ฎ๐Ÿ‡น

Networking can seem like a challenging and overwhelming task, but the BEAM is truly one of the best matches for tackling it. I believe this so much that I'm writing a whole book on this topic! But in this talk, we'll mostly focus on two things. First, we'll talk about when the BEAM is the right fit for networking applications, especially compared to โ€œlower-levelโ€ languages (such as Rust or Go). Then, we'll shift our focus to using the BEAM to write TCP applications, since TCP is the most-widely-used application networking protocol out there. We'll talk about:

We'll discuss how the BEAM's lightweight processes and messaging system provide a powerful and intuitive way to handle TCP sockets and data.
We'll explore how to use acceptor pools and supervision trees to build scalable and fault-tolerant TCP servers.
I'll show you how to use the gen_statem behaviour to build reliable TCP clients that can handle unexpected events and gracefully recover from errors.
This stuff is at the foundation of Phoenix, LiveView, channels, and more. Even if you're not working at the lower levels of the networking stack, this talk will help you understand how many of the tools and patterns we use every day work under the hood.

About Andrea

Andrea is a human born in the ancient lands of central Italy. He loves programming, writing, and learning stuff. He's a software architect, speaker, and member of the core team of the Elixir programming language. His weak spot is having red hair. He's currently a Principal Engineer at Veeps.

Image of Lorena Mireles ๐Ÿ‡ฒ๐Ÿ‡ฝ

Erlang Fundamentals for Debugging Elixir

Lorena Mireles ๐Ÿ‡ฒ๐Ÿ‡ฝ

In this talk we will explore the fundamentals behind the magic of some of the debugging tools in Elixir and their benefits to debug borderline conditions and find hard to reproduce bugs in live Erlang systems ๐Ÿ”ฎ๐Ÿช„

Elixir has a very powerful set of debugging tools not everyone is aware of. They bring the community benefits inherited from the need to debug borderline conditions and find hard to reproduce bugs in live Erlang systems. In this talk, we'll explore the foundations behind Elixir wrappers like Rexbug, using examples to explain the fundamentals which give us all this magic.

About Lorena

Lorena is an Elixir developer at Erlang Solutions. She has been programming backend systems with Elixir for the last four years. She loves technical challenges and believes that you never stop learning. Proud Mexican and coffee lover.

Image of Cory O'Daniel ๐Ÿ‡บ๐Ÿ‡ธ

Go Features YaMightLikeInElixir

Cory O'Daniel ๐Ÿ‡บ๐Ÿ‡ธ

I do a ton of work in the Kubernetes and Cloud Native space, but I'm also a big fan of Elixir. My general disgust towards Golang drove me to build k8s.ex and Bonny, so that I could work in Kubernetes without touching go.

Over the years, I've gotten increasingly involved with Go, particularly in some of the high-security provisioning areas of Massdriver. I've found a number of language features that I find myself missing when I get back to Elixir.

This talk will cover embedded filesystems, error interfaces (go's error handling is awesome if you understand it!), package management and internal packages, implicit interfaces, and struct tags.

About Cory

CEO / Co-founder @ Massdriver.
DevTools and platform engineering enthusiast.
I've been building teams/startups, developing, and managing cloud operations for over 20 years. Creator of the Bonny, an Elixir-based Kubernetes operator framework.

Image of Andrew Forward ๐Ÿ‡จ๐Ÿ‡ฆ

Recommending Elixir To Build a Recommendation Engine?

Andrew Forward ๐Ÿ‡จ๐Ÿ‡ฆ

The machine learning (ML) landscape in Elixir is evolving quickly. Our team does not have production ML experience and the go-to right now is clearly (clearly right?) Python. But, we wanted to see if we could stick to our tech stack (aka Elixir/Phoenix) and set out to build a recommendation engine for our gifting platform. We landed on scholar and our team explored algorithms like KNearestNeighbour, (Naive) Bayes, and KMeans in building our recommender.

About Andrew

Andrew Forward loves cycling and Elixir, neither of which he gets to do full time, but that won't stop him from talking about either. He has unofficially worked as a software engineer since Y2K; officially earning the title in 2018 (it's a Canadian thing). More recently he has been dabbling in data engineering. On his journey, Andrew fell into a PhD in Computer Science and loves shaping young minds as a part-time professor at a (the?) local university.

Image of Andy Glassman ๐Ÿ‡บ๐Ÿ‡ธ

Write Admin Tools from Day One

Andy Glassman ๐Ÿ‡บ๐Ÿ‡ธ

As a developer, some of the biggest time sucks can be: * Tracking down the cause of unexpected behavior. * Fixing data in production systems. * Answering user, or team member questions. * Running maintenance scripts, or other ad-hoc tasks.

It feels good and productive to do these tasks, but this approach does not scale. Your time spent developing new features, or improving existing features will start to suffer. Your team's feature output will not be consistent. Some weeks you may be swamped with support tasks which eat up your development time, and force you to context switch.

In this talk, I'll provide real examples of: * Support horror stories, and how a focus on admin tools helped the team recover. * Types of support tools and processes you can create from day one. * Elixir specific admin tools, and how to best leverage them. * Getting your team to adopt a support mindset.

About Andy

I'm a recovering Java developer who has been working in Elixir for the past 4 years. I love programming, board gaming, fantasy novels, snow sports, mountain biking, and living the dad life.

Image of Sean Moriarty ๐Ÿ‡บ๐Ÿ‡ธ

The Future of Large Language Models is Elixir

Sean Moriarty ๐Ÿ‡บ๐Ÿ‡ธ

Large-language models (LLMs) are leading a new wave of technological innovation. LLMs make it possible to develop and deploy increasingly complex and impressive applications. However, building LLM-powered applications also brings about a unique set of challenges and considerations. In this talk, I'll discuss the challenges of building LLM-powered applications, and why Elixir is the best choice to power the LLM-powered applications of the future.

About Sean

Sean is the author of the book Genetic Algorithms in Elixir: Solve Problems with Evolution.

His interests include artificial intelligence, evolutionary algorithms, mathematics, and functional programming.

Image of Jace Warren ๐Ÿ‡บ๐Ÿ‡ธ

Replacing a Billion+ Record per Day Cassandra Cluster With Elixir and SQLite

Jace Warren ๐Ÿ‡บ๐Ÿ‡ธ

At Savi Solutions, our video surveillance platform needs to be able to process billions of records per day for customers including Burger King, Little Caesars, 5 Guys, and more. As a result, we need a low latency, high performance, and linear scalable database, so we chose Cassandra. However, as our Cassandra cluster began to exhibit performance issues, degrade, and grow in cost, it was evident that we needed to make a change. Thanks to SQLite, Elixir, and the Beam, we were able to completely remove Cassandra from our stack, allowing us to distribute all storage workloads across existing application servers with minimal overhead at no cost.

In this presentation I will cover the strategies and lessons learned in setting up Cassandra and migrating to SQLite such as:

Cassandra and SQLite schema design for video streaming
SQLite partitioning strategies
Interacting with multiple SQLite database files via Ecto
Executing zero-downtime migrations
By the end of this presentation, you will have a better understanding of trade offs while using Cassandra and SQLite and their ability to pair with Elixir in building distributed, scalable, and fault-tolerant applications.

About Jace

Jace currently works as a Principal Software Engineer at Savi Solutions. He first fell in love with software development at the age of 14 when he taught himself how to write his first application. He received his first series of programming contracts by building a Job Procurement Bot that would autonomously scrape the web and apply for hundreds of job opportunities per week. When he is not working, he enjoys spending time with his family, engaging in video game development, or being towed around the neighborhood on his longboard by his dog.


8:00 - 9:00Registration and Breakfast
9:00 - 9:20Opening Remarks
9:20 - 10:05[Keynote] Making the impossible possible: Building distributed systems worthy of our trust โ€“ Heidi Howard
10:10 - 10:40Recommending Elixir To Build a Recommendation Engine? - Andrew Forward
10:40 - 11:10โ˜•๏ธ Coffee Break
11:10 - 11:50Write Admin Tools from Day One - Andy Glassman
11:50 - 1:00๐Ÿฅช Lunch
1:00 - 1:40Go Features YaMightLikeInElixir - Cory O'Daniel
1:40 - 1:50Short Break
1:50 - 2:20The Future of Large Language Models is Elixir - Sean Moriarty
2:25 - 2:55Replacing a Billion+ Record per Day Cassandra Cluster With Elixir and SQLite - Jace Warren
2:55 - 3:25โ˜•๏ธ Coffee Break
3:25 - 3:55Erlang Fundamentals for Debugging Elixir - Lorena Mireles
4:00 - 4:40BEAM: The Perfect Fit for Networks - Andrea Leopardi
4:40 - 5:00Closing Remarks
5:00 - 6:00Happy Hour
6:00 - ?After Party @ Union Hall
The exterior of Littlefield, NY
Venue & Location

Littlefield, Brooklyn

Littlefield is a performing arts space in a former warehouse in Gowanus, Brooklyn. It serves as the perfect, intimate venue for our latest EMPEX NYC conference, conveniently located near the Union St R train.

Hilton Hotel
Official conference hotel

Hilton Hotel

Discover downtown Brooklyn from our hotel, one block from the subway and less than a mile from Barclays Center events and Brooklyn Heights Promenade.

Or check out some other local hotels:
nu hotel
EVEN Hotel


Our sponsors

Our event wouldn't be possible without the generous support of these Elixir champions.

Gold sponsors

A cloud platform built for developers and operations.
The developer experience of a PaaS with the scalability and control of the cloud. An extendable platform that you won't outgrow and doesn't lock you in.

Silver sponsors

Knock is flexible, reliable notifications infrastructure that's built to scale with you. Use our APIs to engage your users, power cross-channel workflows, and manage notification preferences.

Nearsure is a technology company dedicated to linking Latin American IT talent with clients in the US and Canada. Since 2018, Nearsure has been helping North American companies providing professionals for any technology. Work with the most skilled talent in Latin America, accessing flexible and remote technical teams.

Mimiquate is a team of enthusiastic software-development professionals who will help scale your team the same way Elixir scales apps: swiftly and steadily! We are passionate about continuous improvement and providing exceptional service. Adapting to your needs will be our priority and making your vision come to life, our mission.

SmartLogic is a custom web and mobile development shop. Weโ€™ve been building custom software since 2005; Elixir, Ruby on Rails, React, and Flutter are some of our favorite technologies to work with. Our work includes greenfield applications, accelerating product launches, and application replatforming. We also run the Elixir Wizards Podcast.

Community sponsor secures Elixir and Phoenix applications. Replace tools like Snyk, reCaptcha, and Cloudflare bot defense. Use to fix security issues, stop attacks, and pass compliance audits today.

Interested in Sponsoring? โœจ

We're currently looking for sponsors for the conference. We have multiple tiers of sponsorships available to suit all budgets.