These questions were only shown to the developers who chose Scala as one of their three primary programming languages.

Scala

Which versions of Scala do you regularly use?

2.132.122.112.10 or olderScala 3I'm not sure2.1361%2.1250%2.1122%2.10 or older3%Scala 310%I'm not sure2%

The Scala 2.13 version is the most used (61%) in 2021.

What are your compilation targets?

98%
JVM
10%
scala.js
5%
scala-native
1%
Android

Which versions of Java do you regularly use?

9% 7% 3% 5%45% 2% 4%71% 2% 4% 0%Java 15Java 14Java 13Java 12Java 11Java 10Java 9Java 8Java 7I'm not sureOther

While Java 8 is still the most often used version, its share has decreased (from 80% to 75% since 2020), while Java 11 continues to grow (from 40% to 45%).

Which unit-testing frameworks do you regularly use, if any?

77%31%16%12%11% 9% 7% 4% 3% 1% 4%ScalaTestJUnitScalaCheckspecs2ScalaMockZIO TestMUnitTestNGI don’t write unit tests for ScalaI write unit tests, but don’t use any frameworksOther

Which frameworks / libraries do you regularly use for web-development, if any?

40%31%20%19%11% 7% 6% 4% 4% 3% 4%20%Akka-httpPlaySpringHttp4sNettySpark JavasttpSprayFinatraScalatraOtherNone

The share of Play has decreased from 40% to 31% since last year. Usage of Spring has increased from 11% to 20%.

Which frameworks / libraries do you regularly use?

50%33%27%13%11%11% 8% 7% 4% 4% 2% 1% 7%13%AkkaSparkCatsZIOSlickShapelessScalazFS2MonixFinagleTwitter UtilBreezeOtherNone

What editors / IDEs do you use most for Scala?

95%
IntelliJ IDEA
2%
Eclipse
2%
Visual Studio Code
2%
Other

Despite all the measures we've taken to secure a representative pool of respondents, the results may be slightly shifted towards users of JetBrains products, as they are more likely to take the survey.

What additional editor / IDE do you use for Scala the most, if any?

20%11% 3% 3% 3% 2% 1% 1% 3%53%Visual Studio CodeVimSublimeEmacsEclipseIntelliJ IDEAVisual StudioAtomOtherNone

Which build systems do you regularly use, if any?

81%33%24% 4% 4% 2% 1% 1% 1%sbtMavenGradleMillBloopBazelPantsAntNone

Which interactive Scala environments do you regularly use?

44%44%23%15% 9% 6% 6% 4% 1%15%sbt consoleScala REPLIntelliJ IDEA WorksheetAmmonite REPLJupyter NotebookScastieApache Zeppelin NotebookScala IDE WorksheetOtherNone

Which compiler plugins do you regularly use for Scala?

15% 9% 3%77%Scalamacros/Scalameta ParadiseKind ProjectorOtherNone

Do you have macros in your project?

35%No
32%Only in libraries
7%Yes, including whiteboxmacros
5%Only blackbox macros
20%I don’t know anythingabout macros in Scala

In 2021, Scala developers are using macros in their projects more often (45%, up by 9 percentage points from 2020).

What other tools do you use for Scala?

56%21%15%14%11% 3% 0%31%ScalafmtScalastyleScoverageScalafixWart RemoverScapegoatOtherNone

Do you use or plan to use Scala 3 (Dotty)?

61%
I don’t use it, but am planning to use it
16%
I don't use it, and I don't plan to use it
6%
I already use it
16%
I don't know

What types of software do you develop with Scala?

27%20%18%16%15%15%14% 9% 7% 2% 1% 1% 1%25% 2%Business Intelligence / Data Science / Machine LearningWebsitesLibraries / FrameworksSystem SoftwareUtilitiesDatabase / Data StorageIT InfrastructureFinanceProgramming ToolsEntertainmentBlockchainHardwareSecurityOtherNone

Scala is most often used to develop business intelligence/data science/machine learning products, websites, and libraries/frameworks.

Could you tell us your age range?

Scala developers
All developers
1%/11%41%/48%40%/27%15%/10% 3%/3% 1%/1%18–2021–2930–3940–4950–59Other

In comparison with all developers, Scala users are older, more experienced, and more commonly have bachelor’s/master’s degrees. They are more often in large companies.

How many years of professional coding experience do you have?

Scala developers
All developers
3%/9%12%/19%23%/27%27%/18%18%/11%17%/11% 1%/5%Less than 1 year1–2 years3–5 years6–10 years11–16 years16+ yearsI don't have any professional coding experience

Which of the following best describes your job role regardless of the level of your position?

Scala developers
All developers
77%/81%23%/12%20%/5%12%/13%12%/15% 6%/5% 4%/3% 3%/6% 2%/3% 2%/4% 2%/4% 1%/2% 1%/3% 1%/4% 1%/3% 1%/8%Developer / Programmer / Software EngineerArchitectData Analyst / Data Engineer/ Data ScientistDevOps Engineer / Infrastructure DeveloperTeam LeadCIO / CEO / CTODeveloper AdvocateTechnical SupportDBASystems AnalystTester / QA EngineerBusiness AnalystInstructor / Teacher / TutorProduct ManagerTechnical WriterOther

Which of the following best describes the highest level of formal education that you’ve completed?

Scala developers
All developers
54%/48% 29%/15% 9%/22% 5%/10% 2%/1% 1%/1% 0%/1% NaN%/1% 0%/1%Bachelor’s degreeMaster’s degreeSome college/university study without earning a bachelor’s degreeSecondary schoolDoctoral degreeI never completed any formal educationProfessional degreePrimary/elementary schoolOther

How many people work for your company / organization?

Scala developers
All developers
0%/4% 8%/14%16%/21%29%/28%10%/7%12%/9%25%/15% 0%/2%Just me2–1011–5051–500501–1,0001,001–5,000More than 5,000Not sure

What are your primary programming languages?

Choose no more than 3 languages.

Scala developers
All developers
100%/1% 38%/32% 31%/29% 16%/13% 14%/18% 10%/7% 6%/39% 6%/2%ScalaJavaPythonTypeScriptSQLKotlinJavaScriptRust
All results

Java and Python are the languages that are most often used along with Scala.

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues.

Join JetBrains Tech Insights Lab

Take part in surveys and UX studies to make JetBrains products easier to use yet even more powerful. For participating in our research, you’ll also get the chance to earn rewards.

If you have any questions or suggestions, please contact us at surveys@jetbrains.com.