Who is Saša Jurić? Could you tell us a bit more about your career? What would be your expertise?
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.