In advance of James Belsey and Gjeta Gjyshinca’s talk “Mutating the immutable – how we manage change in large-scale applications” at Scala Days New York on June 20th, we spoke to James about Morgan Stanley’s use of Scala to solve complex problems in distributed enterprise computing, the challenges Scala developers face and the upcoming talk at Scala Days.
What’s your background and what do you focus on these days?
At Morgan Stanley, we have a technology group called Application Infrastructure, which strives to minimize duplicative efforts across silos by centrally developing core reusable software components. I have worked in the group for 18 years on various technologies. Currently, we are using Scala to create a large-scale platform which is used to build numerous applications in many regions for different parts of Morgan Stanley’s business, with a particular focus on valuation and risk technology.
Why did you pick Scala and what kind of problems does it solve for you?
Our project is based on a number of functional programming principles. Due to its mixed programming model, Scala makes it much easier for developers to write code that adheres to these functional programming constructs. We have also benefited from the willingness of the owners of Scala to engage with us. They have and continue to be great partners, helping us to get the best use out of Scala and where necessary extending Scala to help us meet our objectives.
What’s the most important challenge Scala developers are facing today?
A recurring problem we see in Scala and other programming arenas is dealing with Mutation, IO, Caching, and Concurrency. These problems remain common in programming today. While developers have good solutions to all of them, each problem is still primarily a concern of the application. By contrast, other complicated challenges, such as memory management and user isolation, have largely been solved for developers on lower levels in the technology stack. We are exploring ways of providing the same facility to application developers for problems that have traditionally been further up the stack of abstractions.
Who should attend your talk at Scala Days and why?
Our talk focuses on how we approach caching and mutation. In our talk, we showcase one part of the technology we have developed that solves the complicated problems that many of us encounter when building applications. We believe that we have some innovative solutions that are worth sharing with others.
Whom would you like to connect with at the conference?
We are very excited about meeting developers who are interested in our innovative use of Scala at Morgan Stanley to solve complex problems that developers are facing today. Our Scala project is a challenging and fun environment to work in – and we’d love to meet developers who want to become part of our team. We invite everyone with an interest in these types of complex challenges to come talk with us at our booth during the conference.
Don’t miss James Belsey and Gjeta Gjyshinca and their talk “Mutating the immutable – how we manage change in large-scale applications” at Scala Days New York on June 20th. Book your ticket now.