Thursday, November 30, 2023 - 07:00
  • Share this article:

At a Glance:

  • Involved in open source since: 2019

  • Works for: Robert Bosch GmbH

  • Eclipse Foundation contributor since: 2022

  • Involved in: Eclipse Kanto

  • Committer to: Eclipse Kanto

  • Eclipse Foundation committer since: 2023

  • Fun fact: Kristiyan originally wanted to be an audio engineer before finding his way into software engineering.

Can you tell me about your background with open source?

I started as a Java developer about eight years ago, and about four years ago I joined a team working on Gardener, a Kubernetes orchestrator. That was my first interaction with an open source project. Obviously, working in software development, you use open source components like libraries, languages, tools, etc. But you don’t really have the opportunity to engage with the community just by doing that.

The project involved things I wasn’t doing in my day-to-day work, so it looked like a really good opportunity for me to learn new things and build my skills. And once I’d joined, I found it really liberating working in open source, compared to the closed source environment of most corporations. It was very interesting to me to see different people from different organizations working together to achieve a common goal, and to build and maintain a community. 

How did you end up getting involved with the Eclipse Foundation?

About a year ago, I found myself in the same sort of position I was in when I joined Gardener: I wanted to go in a different direction, to try and learn new things. I was changing workplaces at the time, joining Bosch, and that was around the same time I heard of the Eclipse Kanto project. It had nothing to do with anything I’d been doing up to this point, and I was really interested in learning more about the technology. So, when I joined Bosch, I started contributing to the project, writing some features and so on. 

It was a remarkable experience. Everything was so organized, not just within the Kanto project but with the organization in general. There are processes for everything, and it really helps with the maintenance and growth of the community of a project. It’s a great platform to grow a project within. And of course, the project itself and, particularly, its place in the Eclipse Software Defined Vehicle (SDV) Working Group is interesting as well. 

How is Kanto used in SDV?

Kanto is essentially an all-purpose platform that provides a lightweight and flexible feature set to enable devices for the IoT world. Those capabilities of Kanto found a use in the Eclipse Leda project, the main purpose of which is to provide system images for a functional Linux-based image/distribution in the context of SDV. Kanto stays in the middle of the architecture, providing container management and software updates and, depending on the use case, it can also provide cloud connectivity. During the last year we have received many feature requests from the SDV community and even a new component for update orchestration, which shows interest, usage and desire for development and growth.

How did your involvement in Kanto lead to you becoming a committer?

It was a very natural transition and happened very soon since I joined the project, as I had previous experience in that area. A lot was happening with the project at the time and I had the necessary skills to help. At the time it was a lot of maintenance of the repositories, while now it has become more about adding new features and adopting new components. And throughout that process we’ve needed people not just writing but reviewing code, so that’s what I’ve been doing the whole time. 

How have you found that experience?

Sometimes it can be challenging, but overall it’s been a really rewarding experience. It’s interesting, being on both sides and doing both contributions and code review. Of course, being a committer is a lot of responsibility because in the end, you’re responsible for all the code that is being accepted in the project, whether you wrote it or not. So, if something goes wrong, it’s ultimately your fault. 

But on the other hand, when you go through the whole process end-to-end and you’re involved in every step, from initial discussions to the implementations and ultimately the adoptions, it’s really rewarding.

What advice do you have for someone considering becoming a contributor or a committer?

If you want to contribute, just go ahead and start asking questions and contributing features. It’s called open source for a reason: it’s really open. Even though in our GitHub we call them issues, for us we think of them as interaction and engagement with the community. Even if you’re just reporting a bug, that’s giving us valuable information about how our project is working and being used. 

If you want to become a committer, it’s important to understand that there’s a lot of responsibility associated with it. It’s not just reviewing and merging code, you need to understand the bigger picture of the project and be really engaged with the community beyond just the code.