When people talk about their experience with Scala, they often say that it is possible to use Scala as a better Java. And indeed, many companies, especially the ones that adopted Scala around 2008-2009, didn’t want to give up the familiar tooling and simply integrated Scala into existing workflows based on Maven. At that time, calling Scala an improved version of Java was questionable but at least justifiable. However, it’s no longer the case. For the most part, contemporary Scala shops don’t use Maven as a build tool, don’t use Spring as a DI container and rarely, if ever, resort to classical design patterns. What do they use then?