Challenging, Rewarding, and Fulfilling: A Q&A With Shuah Khan on Linux Kernel Development


shuahkhShuah Khan was the very first engineer to join Samsung’s North American Open Source Group shortly after it was founded in 2013. Since then, she has been extremely valuable to the company through her contributions to the Linux Kernel. She was recently elected to the Linux Foundation Technical Advisory Board, presenting her with a wonderful opportunity to help direct the Linux Kernel community from the highest technical level.

We asked Shuah some questions to get a better sense of what took for her to get to this position and what it means for herself and for Samsung.

Can you tell me about your work as an open source developer?

I am a Linux Kernel developer, maintainer, and contributor. I maintain the Kernel Selftest sub-system and actively contribute to the Media sub-system, and I enjoy working on features that span multiple kernel sub-systems. Working on an open source project, like the Linux Kernel, allows me to collaborate with a diverse group of talented individuals from all over the world; I find this to be challenging, rewarding, and fulfilling.

What was your first contribution to the Linux Kernel?

I started my open source career at Hewlett-Packard on a Linux middleware project. This experience gave me the opportunity to learn how to work in open source and how to balance product and employer commitments with open source commitments.

I wanted to take this further by contributing to the upstream Linux Kernel independently. As I started to educate myself about the Linux Kernel community, I came across a new project initiative asking for volunteers to contribute to the Android Driver Mainlining effort. I joined this effort and my first contributions followed shortly. This work involved understanding the Android drivers and kernel features, and determine if the feature exists in the upstream, or if a new feature needs to be added. My first contribution was a new driver to the LED sub-system.

You’ve been invited to participate in multiple Kernel developer panels, including some that involve Linus. How were you selected for these?

I have been invited to be on the Kernel Developer Panel twice. The first panel focused on challenges involved in working across sub-systems. I was invited because I contribute to more than one sub-system and I often add features that involve working with maintainers and developers who span multiple sub-systems. The second panel focused on the growing complexity of the Linux API and how developers are working to make them simpler. I was chosen the second time because I have been working on features and frameworks to enable media resource sharing across drivers from different sub-systems.

Congratulations on being elected to the Linux Foundation Technical Advisory Board (TAB)! Could you explain how this came about?

Thank you very much! I am excited to have the opportunity to serve on the TAB.

A good TAB member is well respected by the community, is a ready listener, is comfortable discussing both technical and social issues, and has a good understanding of how the Linux community works. Since the TAB deals with a wide range of issues, the ideal TAB candidate should be prepared to consider issues outside of their own area of expertise. Sometime the most important characteristic of a TAB member is recognizing when an issue is beyond their depth and to go searching for the right person to consult.

The TAB members select a Chair and Vice Chair of the TAB from among their members to serve a renewable 1 year term. The TAB Chair and Vice Chair are selected 6 months after the TAB election. The Chair or Vice-Chair prepare an agenda for and preside over monthly meetings of the TAB.

Self-nominations are accepted from any person, via email to the TAB mailing list, up until the time of the election. In my case, I was encouraged to consider running for the TAB and I nominated myself. 17 candidates ran for the 5 open positions. I am humbled and thankful for the trust my fellow Linux developers have placed in me by choosing me to represent them to the Linux Foundation.

When an employee is elected to the TAB, how does this benefit the company?

There are two necessary abilities for any company that wants to successfully build quality, competitive products using open source: the ability to influence code and policy. Good contributors are able to influence code, but you need good maintainers to influence policy through organizations like TAB. It is a unique and special opportunity for a developer and his/her employer.

What are your goals for the future?

Developers are vital to the continued success of Linux, and encouraging and mentoring new developers to become successful contributors ensures the current and future Linux development needs are met. I plan to use my time on the TAB to mentor and help new developers become successful contributors. I have a wonderful job that allows me to work on an open source project that touches many lives, and I want to continue to expand my knowledge and expertise in Linux. More importantly, I want to continue pursuing this passion for the rest of my career.

This article is republished with permission from the Samsung Open Source Group Blog.