Learn Elixir | Curriculum

Beginner to Advanced

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

Save Years Of Trial & Error Troubleshooting

Your skills learned in each level set you up for success in the next. Score 100% on your code reviews for projects and assignments to advance to the next level and ensure a real-world applicable knowledge of Elixir.

Level One - Intro to Elixir and How to succeed in this course
  • Resources and Transcripts
  • Course Overview
  • What you need to do well in this course
  • Why elixir is poised for the future
  • What is functional programming and how does it apply to Elixir
  • Comprehension Quiz
Level Two - The Syntax and Fundamentals
  • Resources, Transcripts, and Weekly Call
  • Overview and Installation
  • Syntax Basics
  • Basic Syntax Quiz
  • Pattern Matching
  • Advanced Syntax
  • Pattern Matching & Advanced Syntax Quiz
  • Keeping Flow Clean
  • Functional Descriptive Flow
  • Code Fundamentals Assignment
Level Three - REST and GraphQL with Phoenix
  • Resources and Transcripts
  • Overview and Phoenix Installation
  • Introduction to Phoenix and it's Architecture
  • Phoenix Architecture Quiz
  • Phoenix Cheat Sheets
  • Creating a REST API
  • REST API Quiz
  • GraphQL vs REST
  • GraphQL vs REST Quiz
  • Creating a GraphQL API
  • GraphQL Quiz
  • Absinthe GraphQL Resources
  • Creating Web Pages with Phoenix
  • Phoenix Templates Resources
  • Phoenix Channels and GraphQL Subscriptions
  • GraphQL API
Level Four - Ecto DB and Architecture
  • Level Four - Ecto DB and Architecture
  • Resources and Transcripts
  • Overview
  • Creating Schemas and Migrations
  • Schemas and Migrations Quiz
  • Data Integrity Through Changesets
  • Changesets Quiz
  • Writing and Composing Queries
  • Writing and Composing Queries Quiz
  • Managing Schema Relationships
  • Relationship Quiz
  • Integrating Ecto with Phoenix
  • Integrating Ecto with Phoenix Quiz
  • Phoenix Project Ecto Integration
  • ASSIGNMENT
Level Five - OTP & Testing
  • Overview Audio & Transcripts
  • Overview
  • 1 - Audio & Transcripts
  • 1 - What is OTP
  • 1.1 - OTP Supervisors and Workers
  • 1.2 - OTP Process Communication
  • 1.3 - OTP Agent, GenServers & Tasks
  • 1.4 - OTP Application
  • 1.5 - OTP Let it Crash
  • 1.6 - OTP Process Limitations
  • OTP Process Quiz
  • 2 - Audio & Transcripts
  • 2 - ExUnit
  • 2.1 - Writing Testable Code
  • 2.2 - Testing OTP
  • 2.3 - Testing Ecto
  • 2.4 - Testing REST
  • 2.5 - Testing GraphQL
  • 2.6 - Testing GraphQL Subscriptions
  • Testing Basics Quiz
  • 3 - Audio and Transcripts
  • 3 - Writing Maintainable Tests
  • 3.1 - Cleaning up Tests with Support
  • 3.2 - Stubbing & Mocking
  • 3.3 - Testing Side Effects
  • 3.4 - Crushing Bugs with IEx, Logger and IO.inspect
  • Testing Maintainability Quiz
  • OTP Process and Testing Assignment
Midterm Project - Mini Boss
  • Audio & Transcripts
  • Midterm Recap
  • Midterm Project Prep
  • Midterm Project
Opportunity Preparation & Placement
  • Open To Opportunities - Preparation
  • Interviews, Coaching, & Placement
Level Six - Absinthe Deep Dive & Pre-emptive error Handling
  • Overview
  • 1.0 - Thinking About Errors
  • 1.1 - Erroring Gracefully
  • 1.2 - Writing to Handle Unknown Errors
  • Thinking About Errors Quiz
  • 2.0 - Adding Logging to Aid Debugging
  • 2.1 - Creating Error Systems for Debugging
  • 2.2 - Using IEx to Debug Code
  • 2.3 - Debugging with Observer
  • Debugging Quiz
  • 3.0 - Absinthe's Middleware
  • 3.1 - Absinthe's Resolution Object
  • 3.3 - Absinthe Fields and Objects
  • 3.4 - Writing Documentation With Absinthe
  • Absinthe Quiz
  • Error System & Absinthe Assignment
Level Seven - Planning for scalability & How to go distributed
  • Overview
  • 1.0 - Elixir Limitations
  • 1.1 - Statistics to Measure Scale
  • 1.2 - Side Effects of Scaling
  • Limitations and Scaling Quiz
  • 2.0 - Bottlenecks from Elixir
  • 2.1 - Pooling for Increasing Bottleneck Width
  • 2.2 - ETS to Eliminate State Access Bottlenecks
  • 2.3 - How to Architect with Bottlenecks in Mind
  • Bottlenecks and Increasing Width Quiz
  • 3.0 - Connecting Elixir Nodes
  • 3.1 - Sending Messages Across Nodes
  • 3.2 - Clustering Nodes with LibCluster
  • 3.3 - Distributing Work with Tasks
  • 3.4 - Distributing Phoenix & Absinthe
  • Elixir Distribution Quiz
  • 4.0 - Using GenStage to Process Lots of Data
  • 4.1 - GenStage Dispatchers
  • 4.2 - GenStage Consumer Producers
  • GenStage Quiz
  • Scalability & Distribution Assignment
Level Eight - Distributed tooling
  • Overview
  • 1.0 - What are Metrics
  • 1.1 - Erlang Telemetry
  • 1.2 - Gathering Metrics with Prometheus
  • 1.3 - Prometheus Counters, Guages & Histograms
  • 1.4 - Setting up Prometheus and Grafana
  • 1.5 - Displaying Prometheus with Grafana
  • 1.6 - Using Watchdog Processes With Prometheus
  • 2.0 - Monitoring with Sentry
  • 2.1 - Integrating Sentry into Your Application
  • 3.0 - Creating Distributed Supervisors with Horde
  • 3.1 - Using Horde to Run Singleton Processes in a Cluster
  • 4.0 - Replicating State Across Clustered Nodes
  • 4.1 - Using DeltaCDRT to Create a Caching System
  • 5.0 - Distributed Caching Types & Trade-offs
  • 5.1 - Distributed Hash Rings
  • 5.2 - Using Redis as a Cache
  • 5.3 - Using Redex as a Cache
Level Nine - How to use Elixir to architect an application
  • Overview
  • 1.0 - Using Elixir in a Polyglot Situation
  • 1.1 - Architecting with NIFs
  • 1.2 - Architecting a Green Field Application
  • 2.0 - Evaluating Development Tradeoffs
  • 2.1 - The Importance of Delaying Architecture Decisions
  • 2.2 - Poncho Project vs Umbrella
  • 3.0 - Architecting Data Flow
  • 3.1 - Architecting Clean Applications
  • 4.0 - Accessing Workload
  • 4.1 - Shortening Development Time with Libraries
  • 4.2 - Choosing the Right Libraries
  • 5.1 - Setting up Code Coverage with Coveralls
  • 5.1 - Setting up Code Coverage with Mix
Final Project - Last Boss
  • Recap
  • Project Instructions

Testimonials

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

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

Michael Hlista

"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"

Ntwali Heritier

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

Thomas Furland

"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"

Ryan Cua

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

Alan Vardy

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

Leonard Dauksza

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

Cornelia Kelinske

"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"

Steve Leadbetter

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

Alvaro Callero

Plans & Pricing

Whether your goal is to deploy your personal project, take your career to the next level, or get every developer in your company up to speed, we're here to help.

Elixir Mastery

Fast Track To Senior Status.

Lifetime Membership
All 132 Videos
20 Quizzes
9 Assignments
2 Major Projects
Code Reviews
Learn With AI
Private Slack Channel
Weekly Live Coaching Sessions
Junior & Senior Level Certificates
Opportunity Preparation & Placement
$500/m $6000

12 Monthly Installments

Get Started
$4800 (Save 20%)

One-Time Investment

Get Started

30-day no questions asked full refund policy

Videos Only

A Sample Of Elixir Mastery.

Annual Membership
Videos (Levels 1 - 8)
$50/m $600

12 Monthly Installments

Get Started
$480 (Save 20%)

One-Time Investment

Get Started

Annual Membership does not automatically renew after 365 days

Buy Now, Pay Later

Your First Full-Time Remote Elixir Opportunity.

Receive a 75% upfront discount on Elixir Mastery in exchange for 10% of your first year's annual salary, after you're hired.

Want to see if you qualify?

Enterprise

Live Remote Training Tailored To Your Companies Needs.

Quickly outline your ideal scenario and desired outcome so we can connect via email or schedule a discovery session to discuss in greater detail.

Contact Us

Hiring Partners

Have a dream job? Let us know the company and we can reach out to make warm introductions.

Blitz

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

Elixirator

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

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

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

Curiosum

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

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. Launch Scout. Software that lands.

Binary Noggin

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

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

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

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”.

Want to become a Hiring Partner? Drop us a line!