Learn Elixir
left-hero-image-1
Lessons + Projects + Code Reviews + Community + Coaching + Placement & Refferals

Upskill with Elixir!

Everything you need to know to become a talented Elixir dev in one tested and proven process
right-hero-image-1
From startups to Fortune 500s, Elixir already a part of the apps and services you love!

Spend more time creating and less time debugging

Expert Mentorship

Weekly live coaching sessions with top-of-the-line mentors, personalized code reviews for each assignment, and private Slack community

Curated Lessons

Learn at your own pace with in-depth recorded content and real-world projects to challenge how to think and code

Support & Community

Connect with an accountability buddy, network with alumni, spam our AI teacher's assistant, or ask for help from our founding team

Elevate career image
High quality results

Learn to code like a senior Elixir dev

Become confident in your abilities and rise through the ranks

95% of alumni work with Elixir everyday
Top 5 Highest-paid & most loved language
150+ Students worldwide
10x Faster than self-education
Never fail a technical interview again

Over 16 hours of videos rich with valuable insights essential to your success

Intro to Elixir
  1. Course Overview
  2. What you need to do well in this course
  3. Why Elixir is poised for the future
  4. What is functional programming and how does it apply to Elixir
  5. Comprehension Quiz
The Syntax and Fundamentals
  1. Overview and Installation
  2. Syntax Basics
  3. Basic Syntax Quiz
  4. Pattern Matching
  5. Advanced Syntax
  6. Pattern Matching & Advanced Syntax Quiz
  7. Keeping Flow Clean
  8. Functional Descriptive Flow
  9. Code Fundamentals Assignment
REST and GraphQL with Phoenix
  1. Overview and Phoenix Installation
  2. Introduction to Phoenix and its Architecture
  3. Phoenix Architecture Quiz
  4. Creating a REST API
  5. REST API Quiz
  6. GraphQL vs REST
  7. GraphQL vs REST Quiz
  8. Creating a GraphQL API
  9. GraphQL Quiz
  10. Creating Web Pages with Phoenix
  11. Phoenix Channels and GraphQL Subscriptions
  12. GraphQL API Assignment
Ecto DB and Architecture
  1. Overview
  2. Creating Schemas and Migrations
  3. Schemas and Migrations Quiz
  4. Data Integrity Through Changesets
  5. Changesets Quiz
  6. Writing and Composing Queries
  7. Writing and Composing Queries Quiz
  8. Managing Schema Relationships
  9. Relationship Quiz
  10. Integrating Ecto with Phoenix
  11. Integrating Ecto with Phoenix Quiz
  12. Phoenix Project Ecto Integration
OTP & Testing
  1. Overview
  2. 1 - What is OTP
  3. 1.1 - OTP Supervisors and Workers
  4. 1.2 - OTP Process Communication
  5. 1.3 - OTP Agent, GenServers & Tasks
  6. 1.4 - OTP Application
  7. 1.5 - OTP 'Let it Crash'
  8. 1.6 - OTP Process Limitations
  9. OTP Process Quiz
  10. 2 - ExUnit
  11. 2.1 - Writing Testable Code
  12. 2.2 - Testing OTP
  13. 2.3 - Testing Ecto
  14. 2.4 - Testing REST
  15. 2.5 - Testing GraphQL
  16. 2.6 - Testing GraphQL Subscriptions
  17. Testing Basics Quiz
  18. 3 - Writing Maintainable Tests
  19. 3.1 - Cleaning up Tests with Support
  20. 3.2 - Stubbing & Mocking
  21. 3.3 - Testing Side Effects
  22. 3.4 - Crushing Bugs with IEx, Logger and IO.inspect
  23. Testing Maintainability Quiz
  24. OTP Process and Testing Assignment
Midterm Project - Mini Boss
  1. Midterm Recap
  2. Midterm Project Prep
  3. Midterm Project
Absinthe Deep Dive & Pre-emptive error Handling
  1. Overview
  2. 1.0 - Thinking About Errors
  3. 1.1 - Erroring Gracefully
  4. 1.2 - Writing to Handle Unknown Errors
  5. Thinking About Errors Quiz
  6. 2.0 - Adding Logging to Aid Debugging
  7. 2.1 - Creating Error Systems for Debugging
  8. 2.2 - Using IEx to Debug Code
  9. 2.3 - Debugging with Observer
  10. Debugging Quiz
  11. 3.0 - Absinthe's Middleware
  12. 3.1 - Absinthe's Resolution Object
  13. 3.3 - Absinthe Fields and Objects
  14. 3.4 - Writing Documentation With Absinthe
  15. Absinthe Quiz
  16. Error System & Absinthe Assignment
Planning for scalability & How to go distributed
  1. Overview
  2. 1.0 - Elixir Limitations
  3. 1.1 - Statistics to Measure Scale
  4. 1.2 - Side Effects of Scaling
  5. Limitations and Scaling Quiz
  6. 2.0 - Bottlenecks from Elixir
  7. 2.1 - Pooling for Increasing Bottleneck Width
  8. 2.2 - ETS to Eliminate State Access Bottlenecks
  9. 2.3 - How to Architect with Bottlenecks in Mind
  10. Bottlenecks and Increasing Width Quiz
  11. 3.0 - Connecting Elixir Nodes
  12. 3.1 - Sending Messages Across Nodes
  13. 3.2 - Clustering Nodes with LibCluster
  14. 3.3 - Distributing Work with Tasks
  15. 3.4 - Distributing Phoenix & Absinthe
  16. Elixir Distribution Quiz
  17. 4.0 - Using GenStage to Process Lots of Data
  18. 4.1 - GenStage Dispatchers
  19. 4.2 - GenStage Consumer Producers
  20. GenStage Quiz
  21. Scalability & Distribution Assignment
Metrics & Distributed tooling
  1. Overview
  2. 1.0 - What are Metrics
  3. 1.1 - Beam Telemetry
  4. Metrics & Telemetry Quiz
  5. 2.0 - Setting up Prometheus and Grafana
  6. 2.1 - Gathering Metrics with Prometheus
  7. 2.2 - Prometheus Counters, Gauges & Histograms
  8. 2.3 - Grafana Deep Dive
  9. 2.4 - Building Good Grafana Dashboards
  10. Grafana & Prometheus Quiz
  11. Grafana & Prometheus Assignment
  12. 3.0 - Using Global for Distributed Communication
  13. 3.1 - CAP Theorem Basics
  14. 3.2 - Creating Distributed Supervisors with Horde
  15. Global, Horde & CAP Theorem Quiz
  16. 4.0 - Replicating State Across Clustered Nodes
  17. 4.1 - Using DeltaCRDT to Create a Caching System
  18. 4.2 - Distributed Hash Rings
  19. 4.3 - Using Redis as a Cache
  20. 4.4 - Distributed Caching Types & Trade-offs
  21. Distributed Tooling Assignment
Advanced Elixir Application Architecture & Development
  1. Overview
  2. 1.0 - Directory Organization & Module Structure
  3. 1.1 - Umbrella & Poncho Projects
  4. Project Organization Quiz
  5. 2.0 - Connecting to Other Languages
  6. 2.1 - Developing with NIFs
  7. Other Language & NIF Quiz
  8. 3.0 - Architecting a Green Field Application
  9. 3.1 - Architecting Data Flow
  10. 3.2 - Architecting Clean Applications
  11. 3.3 - Thinking about the VM & Reductions
  12. New, Clean & Flowing Applications Quiz
  13. 4.0 - Oban Intro & Setup
  14. 4.1 - Oban Deep Dive
  15. 4.2 - Architecting Systems with Oban
  16. Oban Quiz
  17. Diagramming & Oban Assignment
  18. 5.0 - Evaluating Development Tradeoffs
  19. 5.1 - The Importance of Delaying Architecture Decisions
  20. Dev Tradeoffs & Delaying Architecture Quiz
  21. 6.0 - Assessing Workload
  22. 6.1 - Shortening Development Time with Libraries
  23. Assessing Workload & Libraries Quiz
  24. 7.0 - Setting up Credo
  25. 7.1 - Setting up Dialyzer
  26. 7.2 - Setting up Code Coverage
  27. Code Scanning Quiz
  28. Architecture & Tooling Assignment
Final Project - Last Boss
  1. Recap
  2. Project Instructions
  3. Final Project
Tuning the VM & How to Create and Manage Releases
  1. Overview
  2. 2.0 - Analyzing VM Memory & CPU
  3. 2.1 - Debugging High VM CPU
  4. 2.2 - Debugging High VM Memory
  5. 1.0 - Remote Debugging Tools
  6. 1.1 - Finding Bottlenecks with Recon
  7. 1.2 - Remote Tracing with RexBug
  8. 3.0 - Knowing the VM's Limits
  9. 3.1 - Where the VM Limits Bend
  10. 3.2 - When to Tune the VM
  11. 4.0 - Drafting Releases with mix release
  12. 4.1 - Deploying Bare Metal Releases Over SSH
  13. 4.2 - Deploying Releases with Docker Containers
  14. 4.3 - Using Hot-Code Upgrades to Deploy
  15. 5.0 - How to setup CI
  16. 5.1 - How to Manage Releases
  17. 5.2 - How to Setup a CD Pipeline
Who is this for

Designed for every level of expertise

From beginner, intermediate, to advanced you’ll learn how to leverage Elixir’s world-class performance from someone who’s scaled users into the 10’s of millions.
Basic Person Outline Basic Person Apprentice Practice the fundamentals and perfect your syntax; shift paradigms to functional programming.
Classy Person Outline Classy Person Adept Architect JSON API’s backed with SQL databases.
Wizard Outline Wizard Wizard Learn how to properly go distributed and scale with Elixir unlocking its greatest powers, fault-tolerance & concurrency.
Success stories

Hear from our students

Connect with success stories to discover if Learn Elixir is the best resource to help you reach your goals.

"I just got an offer for a full time position with a remote company and it's all thanks to this platform I highly recommend it"

Image for Ntwali Heritier
Ntwali Heritier Backend Engineer

"I'm half-way through the course and in the interview process for remote companies, I feel extremely confident"

Image for Thomas Furland
Thomas Furland Senior Backend Engineer, Blitz

Dmytro Started from the Ukraine with the goal to learn best practices and find a good job

Image for Dmytro Van
Dmytro Van Elixir Developer, Cheddarflow

"Mika's depth of knowledge is phenomenal, I highly recommend this for anyone that wants to advance their career"

Image for Leonard Dauksza
Leonard Dauksza Project Manager, Stealth Startup

"I was skeptical at first because I never heard of elixir and phoenix however I landed myself a remote contract job with a company in LA, It was a worth it"

Image for Ryan Cua
Ryan Cua Backend Engineer, Blitz

"I ended up getting a job with a company in toronto thanks to this course"

Image for Alan Vardy
Alan Vardy Tech Lead, Blitz

"Everything has gone great and I was able to find a job with a good company"

Image for Michael Hlista
Michael Hlista Backend Engineer, Requis

"You get a great deal of support throughout the course, now I' through the midterm and they helped me find my first job as a developer"

Image for Cornelia Kelinske
Cornelia Kelinske Backend Engineer, Blitz

"I learned alot through the tutorial style videos and Q&A sessions and due to this course I'm now working my first elixir job"

Image for Steve Leadbetter
Steve Leadbetter Elixir Developer

"This course helped me to boost my career alot as a elixir developer"

Image for Alvaro Callero
Alvaro Callero Elixir Developer
learn from the best mentors

Learn from Elixir experts

Deep dive into complex concepts and see how experienced Elixir developers would understand or solve your particular situation and save years of trial and error

  1. Live weekly coaching
  2. Code review of all assignments
  3. AI teachers assistant
  4. Community channels with other alumni
Best practices beat bad habits

Your own personal classroom

A self-paced structured learning environment designed to teach you the best practices of a production-level quality of code.

  1. Progress at your own pace
  2. A learning curve that matches your commitment
  3. Assignments, real-life projects and code review
  4. 132 videos with transcripts + resources
personal classroom
rocket ship

Need help finding your first full-time remote Elixir job?

Connect with the founding team to learn what is working in today's job economy

  1. AI tools to polish your resume and proffessional appearance on LinkedIn
  2. Leverage years of industry connections with our hiring network
  3. Get paid to add projects to your GitHub
  4. Avoid being pre-screened and pass the technical interview
rocket ship

Become a lifetime member

Sprint or marathon, have resources available when you need them the most

  1. Join the weekly call whenever you have questions
  2. Review materials if you need a refresher
  3. Keep up to date and evolving with the world

Compare plans

Select the right plan for you!

$48/mo

Self Guided

A sample of Elixir Mastery

Update your subscription anytime


Includes
Videos Only
$4800 Total

Elixir Mastery

Fast track to senior status

30-day no questions asked full refund policy


Includes
Videos
37 Quizzes & 13 assignments
2 Major Projects
Code Reviews
Learn With AI
Lifetime Membership
Senior Level Certificates
Job Preparation & Placement
Private Slack Channel
Weekly Live Coaching Sessions
FAQ left 1

FAQ

Frequently Asked Questions

Who is this best for?

If you want to master Elixir, in a relatively short period of time, from one centralized platform, to reach your goal (deploying a personal project, leveling up your career, etc), we are absolutely perfect for you!

Who is this not good for?

If you’re a hobbyist and only want to dabble with the language because it’s interesting, we may not be the best fit for you. You could likely spend the next 3 - 5 years of trial & error troubleshooting to brute force your way into learning Elixir at an intermediate level without needing to make any investments into your education.

I don’t have very much experience, should I still take this?

While we don’t teach the fundamentals of programming, we do teach the fundamentals of Elixir. You can begin with little to no experience with Elixir whatsoever and by the end, have the knowledge base of a senior Elixir developer (just without the work experience) but we do recommend you have at least 1-years experience programming with any language before starting with us.

Is this an online course or a bootcamp?

Both! We're a Course BootCamp hybrid, a CourseCamp. Recorded content is 50% of the value and the live coaching sessions are the other 50%. Us helping you find work with Elixir afterward is just a bonus!

Why isn't the pricing closer to what I expected?

Some people expect a quick online course priced around $50 - $500. Others expect a bootcamp priced around $10,000 - $30,000. Truth is we're a bit of both, smack dab in the middle.

Will you help me find work with Elixir afterward?

Absolutely, this is one of the cornerstones of our program. You can have your new skillset pay for itself before you’re even done paying for it. How’s that for a quick turnaround on your ROI!

How do you help me find work or get prepared for interviews?

Talented Elixir developers are in high demand and we’re building a reputation for producing high-quality programmers in the Elixir community.

We can show you how to dress up your LinkedIn, Resume, & GitHub, introduce you to our hiring partners, show you the best places to find work, offer interview coaching & mock technical interviews, and a whole lot more!

Essentially, we do everything in our power to give you your best possible chances to stand out as the obvious candidate head and shoulders above the rest.

How much does a typical Elixir developer earn in a year?

In the course of your career as an Elixir developer expect to earn an annual salary anywhere from $100,000 to $250,000. Naturally, this broad range is dependent on previous experience, expertise, and location with the US paying the highest.

Can I find remote work?

The vast majority of Elixir opportunities are posted as remote because it has been difficult for companies to find competent talent just around the corner.

What is your success ratio in helping people find work with Elixir?

We’re comfortable recommending people for positions once they are passed the midterm project and so far, 100% of the career-oriented individuals passed that point have been able to find employment programming Elixir.

How do I reap a return on my investment?

At full price, $500/mo for 12-mo, you would need to increase your annual salary by $6,000 a year to achieve a return on your investment in the first year and then permanently reap the rewards each year thereafter.

Why do I get a built-in discount for choosing a shorter payment plan?

Rather than make every option $6000, we decided to incentivize those who are able to make larger investments upfront with a scaling discount, that way, we have more operating capital to grow and expand our services at a faster rate.

What happens if I miss or have to pause my monthly investments?

Sometimes life gets in the way, we get it. While we can’t give away our time and energy for free we urge you to connect with Jeremy and we’ll try our best to accomodate your circumstance.

Do you have a refund policy?

Yes, we have a 30-day, no questions asked, full refund policy. After 30 days, we can still cancel any future installments but do not offer a refund on previous instalments.

Why can’t I purchase any one lesson separately?

Sometimes a developer needs to unlearn bad habits before they can begin best practices.

Is it self-paced?

Since ours is a Lifetime Membership you’ll have the same access to everything on year 10 as you would day 1 so you can progress as quickly or as slowly as your schedule allows.

How long does it take to go through the whole program?

The good news is, you can progress as quickly or slowly as your schedule allows since everything is self-paced. That being said, time frames vary depending on your previous experience but if you're able to put in about an hour a day, we estimate that you should be able to pass the midterm project and become job-ready within roughly 12 weeks.

Is there an accountability failsafe?

Some people like to have an extra kick in the pants to keep progressing every day. To stay on top of your studies there are a number of ways to keep Learn Elixir top of mind: match up with an accountability buddy; weekly progress email reminders; weekly live coaching sessions; community chat notifications; personal messages of encouragement from Co-Founder Jeremy Graham.

Can I start a Free Preview to try it out first?

Absolutely, in fact, we encourage it! Start your Free Preview here.

What does Lifetime Membership really mean?

Exactly what it sounds like; course content, private Slack channel, live coaching sessions, everything in our offer will always be available to you once you start with any of the pricing options available.

How do I reach out if I need help?

Mika will be your go-to guy for all things Elixir and can be reached via Slack or during the weekly live coaching sessions. You can also engage with our community in the private Slack channel in the Elixir workspace as a lot of the senior developers enjoy helping the more junior ones.

What is covered in the live coaching sessions?

Every Wednesday at 12:00-noon pacific time, Mika will be on Zoom to answer anyone's questions, about anything. Since this time is driven by its members, the direction and destination are up to you!

Do I have to attend the weekly live coaching sessions?

No, you do not, this is a resource purely available to attend at your leisure.

Are there any code reviews?

To ensure best practices, all assignments and projects require you to pass a code review with 100%. Any less, and feedback will be provided to ensure a production level quality of code each step of the way.

Can I build my own personal project as a part of the curriculum?

As long as you’re able to establish that you’ve learned everything in the prior levels, as seen in these videos, we love it when people bring their own creativity to the curriculum, it’s an absolute win-win.

Do you provide suggestions on what to build for the midterm and final projects?

If you don’t already have an idea in mind we provide recommendations in our midterm project prep video or you can connect with Mika on Slack or in the weekly live coaching session to brainstorm ideas.

Do you update content?

If a video becomes outdated because something fundamental has changed with Elixir we will absolutely update our material.

Are you going to come out with new content?

As Elixir becomes world-class in new environments like blockchain, AI, LiveView, etc, we will be creating new content to remain at the forefront of technology.

Do you teach LiveView?

We know LiveView, have used it ourselves and like it, it's cool to play with. We can offer guidance/advice via Slack or during the weekly live coaching sessions but we haven't created any content for it yet for a couple of reasons 1.) It is still in beta and evolving rapidly so content can quickly become outdated or irrelevant. 2.) It can be quite costly to scale LiveView in production and so it hasn’t become fully commercially adopted yet.


Still have Questions?

Book a call and let us answer them

FAQ Right 1

Get hired faster

Our hiring partners

We are expanding our hiring partner network every week!

Blitz Logo Image

Blitz

Everything you need to win— all bundled into a revolutionary desktop app powered by AI, and built with professional players.

Elixirator Logo Image

Elixirator

Passionate team of full-stack professionals that will help you to turn your great idea into a valuable and awesome product.

Requis Logo Image

Requis

Requis is an easy to use supply chain platform that allows you to manage your entire asset lifecycle. Procure, manage, and sell your assets in one place.

Picsello Logo Image

Picsello

Picsello is a robust and comprehensive tool that helps you do what you do best - be a professional photographer.

Curiosum Logo Image

Curiosum

Curiosum is a software house specialized in custom Web and Mobile development that uses Elixir to provide speed, efficiency, and scalability.

Launch Scout Logo Image

Launch Scout

Discover solutions that radically improve productivity, profits, client relationships and more. Side-by-side, we’ll launch your ideas into a reality you could only imagine.

Binary Noggin Logo Image

Binary Noggin

We forge customizable solutions using Agile methodologies and our mastery of Elixir, Ruby and other open-source technologies.

Smartlogic Logo Image

Smartlogic

Custom data-driven web and mobile software development. We make time to understand your business needs so we can build the right solution that fits within your budget and timeline.

Quanterall

Quanterall is an R&D Lab for software and hardware. The core business of the company is to develop custom Blockchain solutions, Enterprise software, and IoT infrastructure.

Quiqup Logo Image

Quiqup

Quiqup is revolutionizing the MENA e-commerce landscape starting with the UAE.

Remote

Hire, manage, and pay your international team with Remote, the single platform for all your global payroll needs.

Hiive Logo Image

Hiive

Hiive is an exciting and fast-growing marketplace startup headquartered in Vancouver, BC, Canada building a revolutionary trading platform for buyers and sellers of shares in private late-stage venture-capital backed companies and “unicorns.”

Colife Logo Image

Colife

Colife began with the idea that if there was a way that we could make it easy for people to find the right person, and trust could be established, more people would be interested in co-living for the financial, community, and additional benefits.

Blog

Discover the magic of Elixir from our community of wizards.

Articles, columns, tutorials and more

Safer Error Systems in Elixir
Elixir, Error Handling

Safer Error Systems in Elixir

Errors in Elixir often get treated as second class citizens which can make our systems harder to debug than they need to be. In this post we discuss building a more intuitive and robust error system for an easier time debugging and troubleshooting down the road.

How To Learn Elixir For Free With Zero Experience
Elixir, Education

How To Learn Elixir For Free With Zero Experience

Don't Spend A Dollar Until You're Absolutely Certain Elixir Is The Next Programming Language You Want To Master

Jerry Graham Image
Jerry Graham

October 9th 2023

Avoiding Data Loss with Elixir's :dets module
Elixir, Caching, Disk Storage, DETS, Design

Avoiding Data Loss with Elixir's :dets module

:dets allows us to persist items on disk quickly and natively in Elixir, however there is a chance we can loose data when using this method. In this article we discuss how to create a persistant cache module in Elixir with :dets, why we can lose data and what we can do about it

Mika Kalathil Image
Mika Kalathil

March 13th 2023

Who we are

Meet the team

Mika Kalathil

Mika Kalathil

Lead Instructor | Co-Founder

Mika has been a member of the Elixir community since the beginning and often learned directly from the core team when documentation was sparse. After working as a senior Elixir developer for several years Mika began to notice a repetition of fundamental flaws or gaps of knowledge when reviewing others’ code for deployment, hiring, or consulting purposes. After identifying an obvious need in the community, he decided to create Learn Elixir and serve developers throughout their careers in a manner he wished he had.

Jeremy Graham

Jeremy Graham

Co-Founder

Jeremy has worked in sales and business development all his life and is likely to be the first person you talk to at Learn Elixir. He’s noticed the rise in popularity and appreciation for Elixir over the years and is thrilled to be contributing to the community in his own way. As the language transitions from niche to mainstream, he is determined to do whatever it takes to help your career while creating a centralized standard of excellence companies can trust.

Kurt Hogarth

Kurt Hogarth

Instructor | Co-Owner

Kurt, a Creative Technologist from GiantSpoon and Blitz, cherishes Elixir for its simplicity in building concurrent applications. Passionate about mentoring, his mission is to demystify Elixir's benefits, especially its process-oriented programming with OTP. He enjoys sharing projects that showcase the language's richness.