Advanced Scala

Advanced Scala

Become an expert Scala developer with our advanced course. Master Scala and functional programming through clear lessons, practical exercises, and a smooth learning curve. Ideal for those already comfortable with Scala essentials, this course will elevate your coding skills to the next level.

Goal

Become a Scala pro.

At this point, I don’t need to pitch Scala to you. You’ve seen it in action, you know the basics, and I’m willing to bet you like it at least a bit.

Perhaps you want to contribute to a bigger project, or need to write your own libraries at work so you can reuse them for a large system. Maybe you need to dive deep into a complex codebase or into a massive framework like Akka or Spark, but the internal code looks overwhelming.

This course is for you. The course is for the Scala programmer who understands the essentials and wants to level up.

Now on Scala 3.

Skills You'll Learn

After this course, you’ll be able to:

  • Read any Scala code in any codebase, in any project, no matter how big, difficult or obscure
  • Contribute to any Scala project of any scale
  • Confidently write your own Scala libraries
  • Easily browse through the implementations of existing libraries without confusion
  • Work with concurrent JVM applications written in Scala
  • Apply advanced functional concepts, including partial functions, lazy evaluation and monads
  • Work with infinite collections
  • Understand Scala’s implicits mechanism, including your power and responsibility
  • Master Scala’s unparalleled type system
  • Use the Scala compiler to your advantage

Skills you’ll get:

  • Advanced Scala as a language
    • Use alternative syntax and syntax sugars with ease
    • Create your own pattern matching patterns
  • Advanced functional programming skills
    • partial functions & partially applied functions
    • infinite, property-based collections
    • lazy evaluation
    • infinite lazy collections
    • monads
  • Parallel & concurrent functional programming
    • Understanding the JVM threading model
    • Futures
    • Promises
    • Solving Concurrency Issues
    • Parallel Collections
  • Mastering contextual abstractions
    • Given values and using clauses
    • Extension methods
    • Type classes
    • Higher-order functions with context-based values
    • Implicit conversions
    • Implicits, i.e. the Scala 2 contextual abstractions to be fully bulletproof
  • Mastering the Scala type system
    • Deeply understanding why Scala multi-inheritance is solid
    • Correctly applying variance (which 99% of Scala programmers can’t… because they don’t understand it)
    • Applying self types and the layered “cake” pattern
    • Using higher-kinded types for generic libraries
    • Imposing type restrictions with recursive types and the academically-fancy-but-common-sense F-bounded polymorphism

All with live runnable examples and practiced with exercises.

Plus some extra perks:

  • You’ll have access to the entire code I write on camera (all 3500+ LOC, more than most people ship in months)
  • You’ll be invited to our private Slack room where I’ll share latest updates, discounts, talks, conferences, and recruitment opportunities
  • You’ll have access to all the takeaway slides
  • (Soon) you’ll be able to download the videos for your offline view

Meet Rock the JVM

Daniel Ciocîrlan

I'm a software engineer and the founder of Rock the JVM.

I'm a software engineer and the founder of Rock the JVM. I started the Rock the JVM project out of love for Scala and the technologies it powers - they are all amazing tools and I want to share as much of my experience with them as I can.

As of February 2024, I've taught Java, Scala, Kotlin and related tech (e.g. Cats, ZIO, Spark) to 100000+ students at various levels and I've held live training sessions for some of the best companies in the industry, including Adobe and Apple. I've also taught university students who now work at Google and Facebook (among others), I've held Hour of Code for 7-year-olds and I've taught more than 35000 kids to code.

I have a Master's Degree in Computer Science and I wrote my Bachelor and Master theses on Quantum Computation. Before starting to learn programming, I won medals at international Physics competitions.

What's Included

Loading...

Take this course now!

Advanced Scala - Lifetime License

Loading...

Just the course with a one-time payment

  • 20 hours of 4K content
  • 3500 lines of code written
  • All PDF slides
  • Access to the private Rock the JVM community
  • Free updates
  • Lifetime access
Get Now

All-Access Membership

Loading...
/monthly

All of the Rock the JVM courses

  • 320 hours of 4K content
  • 60660 lines of code written
  • All Scala courses
  • All Kotlin courses
  • All ZIO courses
  • All Typelevel courses
  • All Apache Flink courses
  • All Apache Spark courses
  • All Akka/Pekko courses
Join Now

The Scala Bundle

Become a Scala and functional programming expert from scratch with our all-inclusive course bundle: master everything you need in one complete package, at a discount

100% Money Back Guarantee

If you're not happy with this course, I want you to have your money back. If that happens, contact me with a copy of your welcome email and I will refund you the course.

Less than 0.05% of students refunded a course on the entire site, and every payment was returned in less than 72 hours.

FAQ