Matei David was introduced to CNCF through his internship with Linkerd and since then has been a enthusiastic member of the CNCF community – having recently started as a software engineer at Bouyant. Matei Paris took some time to answer a few questions about how he got started in open source, what he is currently working on, and advice for anyone who wants to get started contributing to the cloud native ecosystem.
To start, you completed an LFX Program Internship with CNCF project, Linkerd. Can you tell us about how the internship went for you and where you heard about the opportunity?
Absolutely! I really like talking about my time as an intern with Linkerd because I regard that summer as a turning point in my career. I met a bunch of great people, made some lasting friendships and learned a lot in the process.
I heard about the LFX Internship program through word of mouth and it was by accident. As is customary with the program, the first step in the application process is to get in touch with the community you’d like to intern with, introduce yourself, and express interest. There is usually a one or two-week registration window. By the time this window opened, I had already contributed code and was on the Linkerd Slack daily.
At some point during this registration window, we had an influx of people join the Linkerd Slack channel, many of them referencing “CommunityBridge” (the name of the mentorship program at the time). Being the curious person that I am, it didn’t take me long to find out what the whole buzz was about; I decided to apply the same day. As part of the application process, the Linkerd team wanted potential interns to write a proposal on the issue they would like to work on. Needless to say, I spent the rest of the week crafting the proposal that landed me the internship!
After I found out I was accepted, I got to know my mentor and friend Thomas Rampelberg. After some initial planning and a brief introduction to the team’s way of working, I embarked on my summer-long journey to deliver Topology Aware Service Routing support for Linkerd! Throughout the summer, I was involved in a couple of feedback loops with the team (mainly through code reviews). These were opportunities for me to learn more, consider different approaches, and refine my code. Alex Leong, one of the Linkerd core maintainers gave me such valuable feedback to start with that for the rest of the summer I was eager to push changes just so I could have his opinion. While Alex and the maintaining team helped me become a better engineer, Thomas helped me become a better professional and an even better person. He saw to it that I can “navigate” (pun intended vis-a-vis Kubernetes) the cloud native ecosystem waters.
To this day, I am still learning a lot from the Linkerd team and Thomas is still a mentor, albeit in a less direct way.
Please tell us a bit about how you got into the cloud native world.
For sure, I’ll start by saying I’m a Software Engineer at Buoyant, I’m based in London and I’m a bit of a nerd. I’ve been around computers for a long time now although not in an engineering or theoretical setting — like a lot of people in the industry, my love for computers started with video games.
I’m naturally very curious; since I was on my computer for extended periods of time, I started looking into how computer hardware works, learned my way around the operating system and started developing a deeper passion for technology.
I got my start in the cloud native world a bit more recently. It was during an internship before my final year of university. My employer at the time gave me a list of teams that I could join with varying scopes and responsibilities. I chose to join the platform engineering team since it resonated with me the most: it had lots of buzzwords (imagine my excitement!), a tech stack that stayed away from Java and it presented a good opportunity to learn networking and systems engineer concepts — two branches of computer science I was already interested in.
Not long after I was coding Go programs, building them into docker images and deploying to our Kubernetes clusters!
What was your first contribution to open source?
My first real contribution happened a few weeks into the internship I previously mentioned. I contributed a small feature to a project we were using internally called kube-aws — a CLI tool that lets you create, update or delete Kubernetes clusters in AWS. As of today, the repository is archived; I think fondly of my first contribution, it was a very formative experience.
I said real contribution because prior to my internship I did make a few efforts to break into open source. As part of Hacktoberfest, I practiced my git skills by following a “First Contributions” tutorial and adding my name to an existing list of first-time contributors. I’m definitely prouder of my kube-aws effort though.
What got you interested in Linkerd?
I found out about Linkerd from a colleague; it was in the same context of “which service mesh should we pick.”
Fast forward to when I was writing my thesis for my bachelor’s degree — I became interested in metrics for a Kubernetes scheduler I was building. At the same time I was also looking for a summer internship, one thing led to another and I stumbled upon Linkerd again! I was a bit apprehensive of contributing — it had been a few months of reading books, articles, and journals and barely writing any code. Luckily, after I expressed interest the community was quick to encourage me and I went through with my contribution, attended my first Community Meet-up, and decided to stick around for more.
What are you currently working on in the cloud native ecosystem?
Glad you asked! I’m working full time on the world’s ultralight, security-first service mesh for Kubernetes — Linkerd. Had my start on the 1st of April 2021 (turns out the job offer wasn’t an elaborate April’s fools joke) and very excited to work full time in open source; even more so, on a project that’s so close and dear to my heart.
I’ve been a Linkerd contributor for over a year. I started with a few contributions in my spare time and followed that up with a summer full of opened pull requests as part of the LFX Mentorship scheme. I think this was the cornerstone of my involvement with the Linkerd community — it helped me understand the project and the cloud native landscape much better. The support and guidance I received from my mentor, Thomas Rampelberg, Alex, and the rest of the Linkerd maintaining team, have also been crucial in my development as a professional. Months have passed and Thomas still happily answers all of my silly questions.
Last but not least, after my pleasant experience with Linkerd I also branched out and opened a few pull requests in Backstage, a new project in the cloud native ecosystem. There are lots of other projects that have my attention though, many in the networking space.
Is there any advice you’d give to people who want to start contributing?
Just do it! I know it’s a bit of a cliche to say this, but I think as software engineers, especially in the open source space, we tend to undermine ourselves and underestimate how inclusive and supportive open source communities are. Many of us gladly volunteer our time because we are passionate about what we are building; on this note, we like to promote learning and we love when newcomers make an appearance.
Additionally, being thorough with your work and communicating as much as possible can help alleviate some of the anxiety around first time contributions. It’s a bit easier to get constructive criticism, indications, and help when you can explain your reasoning and your understanding of the problem you’re facing. Not to toot my own horn but I have received a few compliments for my PR descriptions.
Finally, if you’re not sure where to start, the LFX mentorship program is a great program to look into! It helped me transition into open source, learn more about the landscape, do amazing work and build some great friendships, definitely something I’d recommend taking part in.
What message would you like to send to newcomers to the cloud native community?
Hi, and welcome! The cloud native space can be a bit complex and it’s certainly fast-paced but don’t let that deter you, I promise it does get easier. You’ve certainly picked a laid back, helpful and exciting community to be a part of — when in doubt, ask, plenty of people ready to answer the call for help.
Also, if you happen to like distributed systems, metrics and networking, we have some good issues to pick up in the Linkerd community; hopefully see you on Slack 🙂
Any fun facts about you that you’d be willing to share?
Although I’m based in London, I was born and raised in Romania and my name — Matei David — is made up of two forenames that can also be surnames. Pretty fun but tends to confuse some people (my dentist, for example).