Pierre Ricadat is a Tech Leader at Devsisters. He's been developing with Scala for over 10 years, mostly in the game industry. He is also an open-source contributor and the creator of Scala libraries Caliban (functional GraphQL server and client) and Shardcake (entity sharding and location transparency).
Since 2020, I have been working on a game server for the popular mobile game CookieRun: Kingdom, which serves over a million monthly players. This server is fully developed in Scala using a purely functional programming approach.
In early 2024, my team faced the challenge of introducing real-time, multiplayer “mini-games” into our existing game. This required a significant architectural shift. We designed and implemented a new component from scratch, leveraging the lessons we’ve learned over the years and the latest features of Scala.
In this talk, I will explore the architecture, application design, and techniques we used to build this new game server. From immutability and software transactional memory to refined types and monadic constructs, I will demonstrate how functional programming principles can be applied to build reliable, maintainable, and high-performance applications in the real world.