Introduction to Scala

4.118 hours864 learners
Explore functional programming by learning the syntax, tools, and programming paradigms of Scala. Learn how to work with data, handle user input, and design robust programs.
Provided byLogo of the provider JetBrains Academy
See course content4 weeks ago last updated
No credit card required

Our students are building their future at:

Study at your own pace
Fit learning around your schedule. Suitable for all levels.
Learn from the experts
Short, practical text lessons by seasoned developers.
Become job-ready
Integrated with professional tools by JetBrains.
Join the community
Trusted by learners worldwide, confirmed by Trustpilot

What you'll learn

This course is based on practical projects that will allow you to gradually dive into the modern Scala language. We'll begin with the basic syntax of the language and step by step cover all you need to know to start using Scala and write your own programs!

Here's what you'll learn:

  • the most common features that define Scala;
  • how Scala helps you write more declarative and understandable code;
  • how OOP and functional programming are related to each other;
  • how to work with data and user input;
  • how to handle errors and design your program.
See course content

Learn by doing

# 1
Apply knowledge into practice
You already know the theory. Now it's time to code like you do at work—in a professional IDE, with real project constraints, solving problems that actually matter. Welcome to software engineering as it should be.
# 2
Navigate complexity with surgical precision
Most developers waste months learning random concepts without seeing how they connect. Our interactive Knowledge Map fixes this. It shows exactly how every programming concept relates to others, helping you build a structured mental model of coding.
# 3
Copy the best. Then improve.
Here's what top engineers do that others don't: they study other people's code obsessively. When you get stuck on Hyperskill, you can explore solutions published by other developers. See their exact code. Understand their approach. Learn their tricks.
# 4
Code review that actually makes you better
We stripped code review down to what actually matters: does your solution work? Have you handled the edge cases? Is there a cleaner way to write this? Hyperskill acts like a competent reviewer who actually tests your code. Not genius-level analysis, not architecture debates — just solid feedback on making your code better.

Topics covered by this course

Fundamentals
20 topics
Control flow
15 topics
Types and data structures
9 topics
Object-oriented programming
6 topics
Basics
5 topics
Algorithms and Data Structures
5 topics
Working with data
2 topics
Lazyness
1 topic

Learn from the industry experts

JetBrains Academy

JetBrains Academy

JetBrains Academy is a part of JetBrains, a global software company specializing in the creation of intelligent, productivity-enhancing tools for software developers and teams. With years of expertise in software development and education, JetBrains Academy empowers more than a million people worldwide to learn and teach computer science, and help organizations inspire their teams to reach their goals in tech. Professional development tools play a big role in computer science education. This is why JetBrains Academy courses offer integration with JetBrains IDEs. This integration assists learners in getting experience with real development processes to streamline their learning curve at future work.

Your peers think Hyperskill rocks

Michael Short avatar
Michael Short
2 years ago
I chose this track because I wanted to learn about functional programming. Not as polished or as popular as the Java and Python tracks but fascinating nonetheless. My thanks to all responsible.
Andres Losada avatar
Andres Losada
3 years ago
Learned a lot about this new paradigm (at least for me), scala offers a fresh way to write code.
Ivan Prokhorov avatar
Ivan Prokhorov
3 years ago
The track is not in the "Beginner-friendly" pool, and it is right, as it seems it is assumed that a learner already knows something of CS.

Join a community of 700 000+ passionate learners

Discussion feed

Ask questions, interact with the community and learn together with others.

Study groups

View solutions posted by other learners and learn from them.

Networking

Connect, share insights, collaborate on projects, and advance your career.
See course content

Select the plan that suits your learning goals

View plans