Spark is the single biggest use that comes to mind.<p>Scala reminds me of Java trying to be Haskell. If you know either of those then you have a head start.<p>Martin Odersky’s course Functions Programming in Scala: <a href="https://www.coursera.org/learn/scala-functional-programming" rel="nofollow noreferrer">https://www.coursera.org/learn/scala-functional-programming</a><p>Scala for the Impatient: <a href="https://github.com/shellyhanda/Scala/blob/master/Scala%20for%20the%20Impatient%2C%202nd%20Edition.pdf">https://github.com/shellyhanda/Scala/blob/master/Scala%20for...</a>