The Scala Lead at MOIA, an innovative mobility company that is changing people’s lives by re-imagining urban mobility, Markus Jura is a Scala enthusiast focusing on designing and building distributed systems based on Akka. He is also a co-organizer of the Scala and Reactive Systems user group in Hamburg.
In advance of his talk Managing an Akka Cluster on Kubernetes at Scala Days Lausanne, we caught up with Markus to learn more about his background, about how MOIA re-imagines urban mobility and his upcoming talk.
What is your most favorite Scala Days story or memory?
There are quite a few moments to remember but these two are my favourites.
The Scala Days venue in 2014 was the Kosmos, a former cinema in East Berlin. As a kid, I grew up in this neighbourhood. Attending Scala Days, not only in my home town but also at the place where I watched movies in my childhood, made my first Scala Days very special.
Then, Scala Days 2018 in Berlin was the first tech conference that our still young company attended. Waking up with the team in a shared AirBnB in Kreuzberg and the pilgrimage to the conference together was great fun. Forever remembered will also be the excellent keynote by Eric Bowman about team autonomy and accountability. This talk shaped the way MOIA functions today.
Tell us about your background and your journey.
In 2011 I fell in love with Scala after working several years as a Java developer. Since then I’ve founded a Y Combinator-backed startup that used solely the Scala ecosystem and worked for Lightbend as a developer. Currently, I am leading the Scala teams at MOIA, where we are building a fully electric ridesharing service to return cities to the people.
Can you tell us more about MOIA and how it’s changing the urban mobility landscsape?
Sure! MOIA is a ridesharing service where people share a vehicle with a similar journey starting point and destination. During the trip, more people can get in and out. Our dynamic pooling algorithm optimises how our customers get from point A to B most efficiently with the objective of avoiding the vehicles’ travelling only with a single passenger and reducing congestion in the cities. In fact, in Hamburg, MOIA is operating the largest fully electric ridesharing fleet worldwide.
As for your career at MOIA, what’s the biggest highlight so far that you’d like to share with us?
Launching our ridesharing service in April this year in Hamburg is something I’m very proud of. After a year and a half of laser-focused work with an amazing team, finally seeing the product in the streets and knowing that our customers use it and love it fulfils me with immense pride.
The launch was the defining moment but the true highlight was the journey towards it. Having the chance to work with a team where everyone truly cares about the product and has the technical skillset to build the unthinkable is the ride of my lifetime.
Why did you choose Scala and what kind of problems does it solve for you?
When choosing the technology stack at my newly founded startup, I was looking for a language that is high-performant and supports both rapid development and maintainability of applications in the long run. Scala 2.9 with Play and Akka was far superior as Java at that time. The amazing community and the power of Scala, and continuously learning new things after so many years, means that it is still the language of my choice.
What is the biggest challenge Scala developers are facing today?
With power comes great responsibility! The fact that Scala is extremely powerful and that the ecosystem provides various tools to solve the same problem makes it challenging, especially for beginners, to choose a cohesive stack that works. Many developers are overwhelmed with the options and prefer an ecosystem that is more guided towards “the way of doing things”.
In addition, the industry shifts more and more towards cloud-native technologies such as AWS Lambda functions. In this environment, fast startup times are key to avoid high latency on cold lambdas.
What can help address this challenge?
Scala 3’s focus on consolidating the language constructs to improve the language’s consistency, safety, ergonomics, and performance will make it easier for developers to choose the right tool for the job. The community projects should focus even more on comprehensive documentation to get started quickly and not get lost when it gets tricky.
Projects such as GraalVM and Scala native should become more mature to make Scala a great cloud-native choice.
What inspired MOIA to participate as a sponsor at the 10-year anniversary of Scala Days?
OSS is not a free lunch. Scala is one of the main languages used at MOIA. We feel obliged to give back to the community to keep the ecosystem vibrant.
You are both speaking at Scala Days and hosting a booth as a sponsor on the expo floor. Can you please tell us who should attend your talk at Scala Days and who should stop by your booth?
During my talk, Managing an Akka Cluster on Kubernetes, you will learn exactly that: how to manage an Akka Cluster on Kubernetes. Special care needs to be taken during bootstrapping, network partitions and rolling deployments. I will introduce the Akka Management and Akka Split Brain Resolver modules and show you how to configure your Akka Cluster application to run it smoothly on Kubernetes. The talk should be interesting to anyone wanting to know how to run an Akka Cluster application on Kubernetes.
As for the booth, we are looking forward to meeting developers who want to get more insights about how we’ve built a ridesharing service with Scala and Serverless that currently conquers the world.
Whom would you like to connect with at the conference?
With everyone! The brains behind the OSS contributions, the first-timer checking out if Scala is their thing, my old Lightbend family, and people that want to celebrate the 10th-anniversary.