The Science of being super
Engineering
Backend
BEAM
Elixir
Kafka
Protobuf

BEAM me up, Scotty: A short talk with Saša Jurić

Saša is a household name in the Elixir community, and his book, Elixir in Action, is a staple we at Superology already use for our backend developer onboarding. Apart from sharing his vast knowledge and giving lectures at Superology, he's helping us improve our backend code, write our code style, and develop new libraries for Kafka and Protobuf. We wanted to pick his brain about his work and how he sees Superology in terms of technical development and growth.

Who is Saša Jurić? Could you tell us a bit more about your career? What would be your expertise?

Saša Jurić

I'm a software developer, mentor, and consultant. I wrote my first "Hello World" some 30 years ago, and I've been developing software as a full-time professional for the past 20 years. I've worked on various kinds of projects, desktop apps, frontends, and backends, using different technologies, such as C++, C#, Ruby, and JavaScript. For the past 10 years, my main focus has been on BEAM programming languages, primarily Elixir. More recently, I've been operating as an independent Elixir mentor/consultant, helping teams adopt the language and use it in production. I'm the author of the book "Elixir in Action" and an occasional public speaker at international conferences.

What are you working on in Superology?

I'm collaborating with the Superology backend team in a couple of different ways. First, I've been doing a series of talks on various BEAM-related topics. In addition, I've been working with the team on a company-wide style guide. In a more traditional developer role, I helped the team address some long-standing technical pain points, such as working with the Google Protobuf format and interacting with Apache Kafka. The latter was particularly interesting, as it led to writing a completely new Elixir Kafka client, which is internally implemented as a wrapper around Java's Kafka library.

How could this impact our growth?

The internal talks aim to expand the team's knowledge about the BEAM, help them avoid some common pitfalls of the technology, and allow them to manage the production with more confidence. The style guide increases the code consistency, which in turn makes it easier for people to work with the code they didn't originally write, shifting the code ownership from individuals to the entire team.

Finally, the mentioned technical improvements resolve some issues that occurred in day-to-day development, while the new Kafka client unlocks some features that were previously not available to BEAM developers. All of these things should make the people more efficient and make it easier for the team to grow.

How are you getting on with the people you’re working with?

I've been enjoying working with everyone so far. People are smart, but beyond that, also curious, open-minded, and overall nice. They are exactly the kind of people I like working with.

In this regard, what do you see as our strengths? Or weaknesses, for that matter?

In my view, the biggest strength of any company, and Superology is no exception, are its people. And as I've just mentioned, I think the people on the team are great.

From a technical point of view, it's impressive to see how the team managed to implement a high-throughput, low-latency backend at scale using technology they didn't work with much previously.

When it comes to "weaknesses", I don't really like to think in such terms. Instead, I prefer to think about the potential for improvement. I've been providing pure technical services, and while I see a few areas where some improvement could be made, such as the approach to writing tests, overall, I think that things are looking pretty good.

Latest Posts

How more downtime drives creativity and innovation
Culture

How more downtime drives creativity and innovation

As more and more companies are pushing creative ways of implementing a more sustainable work-life balance model, we're opting for unlimited vacation. That's just...
How we use data to advance user experience with ClickHouse
Data

How we use data to advance user experience with ClickHouse

Superology uses quantitative data to create reports, analyses them using statistical tools, and creates randomized experimentation processes. We use this data to...
Fastly: Pushing content closer to users
Platform

Fastly: Pushing content closer to users

Superology leads the way when it comes to fast-paced technological innovation in the betting industry. Conventional systems are changing fast to accommodate millions...

We're hiring!

We're hiring

There are endless opportunities for improvement. We need great talents to make it happen.

But first, cookies
This site needs cookies to function. We all do. Along with the necessary ones, we would like to use additional cookies to improve your experience.
Necessary Cookies
Info
Analytics Cookies
Info
Read more about it in our Cookie Policy.