Updated June 2026 35 hours of live training delivered over 5-10 days to accommodate your scheduling needs. Engineers who want production fluency in Rust on the 2024 edition: writing libraries and services other people depend on, navigating async and concurrency, integrating with C through FFI, building procedural macros, and using AI coding tools effectively without letting them write Mastering Rust is a comprehensive deep dive into the modern Rust language and toolchain. The course is built on the Rust 2024 edition (1.85 introduced the edition; 1.96+ recommended for the current toolchain) and reflects the current state of the language: the 2024 edition's improvements alongside features stabilized since then: async closures (1.85), let-chains (1.88), naked functions (1.88), the LLD default linker on Linux (1.90), native workspace publishing (1.90), and improved sort performance via driftsort and ipnsort. async fn in traits has been stable since 1.75 - earlier than the 2024 edition. It moves from foundations through advanced topics - traits and generics, lifetimes in earnest, async/await, fearless concurrency, All students receive comprehensive courseware covering all topics in the course. Courseware is distributed via GitHub in the form of documentation and extensive code samples. A free GitHub account, the latest stable Rust toolchain installed via Mastering Rust
Class Duration
Student Prerequisites
Target Audience
unsafe or unwrap you wouldn't ship. This course assumes the fundamentals from Rust Essentials.Description
unsafe and FFI, declarative and procedural macros - and threads in a realistic AI-augmented workflow throughout. Senior Rust engineers in 2026 use Claude Code, Cursor, and GitHub Copilot together; this course teaches how to do that without sacrificing the safety properties that make Rust worth choosing in the first place.Learning Outcomes
Arc, Mutex, RwLock, channels, atomics, and Send/Sync bounds.unsafe Rust deliberately, audit it confidently, and expose safe abstractions over it.macro_rules! macros and procedural derive/attribute macros using syn, quote, and proc-macro2.Training Materials
Software Requirements
rustup (Rust 1.96+ on the 2024 edition), Visual Studio Code or another supported editor with the rust-analyzer extension, Docker for the FFI lab, and an AI coding assistant of choice (GitHub Copilot, Cursor, or Claude Code). A cloud-based environment can be provided if local installation is restricted.Training Topics
Modern Rust and the 2024 Edition
let-chains, async closures, RPIT capture rules, naked functionsrustupToolchain and Editor Setup
cargo, rustc, rustfmt, and clippy in depthdbg!-driven workflowsCargo and Crates
Cargo.toml features, profiles, and target-specific dependenciescargo publish --workspacebuild.rs) and code generationTypes, Ownership, and Lifetimes
for<'a> lifetimesIdiomatic Error Handling
Result<T, E> and the ? operatorthiserroranyhowStrings, Collections, and Iterators
String vs. &str and slice semanticsVec, HashMap, HashSet, and BTreeMap/BTreeSetmap, filter, fold, try_fold, zip, chainIterator traitPattern Matching, In Depth
match, if let, while let, and 2024 let-chains@ patternsTraits and Generics
impl Trait and return-position impl Trait in traitswhere clauses, and associated typesdyn TraitAsync and Concurrency
impl Trait in traitstokio::select!, JoinSet, and cancellationfutures::StreamConcurrent Programming
Send, Sync, and the data race storyArc, Mutex, and RwLockstd::sync::mpsc, crossbeam, tokio)rayon) vs. asyncUnsafe Rust
unsafe superpowers and what they actually meanunsafe blocks: invariants, comments, and testsunsafe before accepting itForeign Function Interface
extern "C" and ABI considerationsCString, CStr, and string ownership across the boundarybindgen, cbindgen, and the libc crateMacros and Metaprogramming
macro_rules!syn, quote, and proc-macro2derive macro end-to-endTesting, Documentation, and Quality
proptestcriterionrustdoc and writing examples that compilecargo-llvm-covAI-Assisted and Agentic Rust Development
unsafe, unwrap, and unbounded allocations