How to Advance Your Career in Linux Development
How do I advance my career? It is a question that is posed to us on a daily basis. People are always looking to take that next step up the corporate ladder. Traditional means in doing so involve such tactics as new project initiative, corporate politicking, networking, etc. Those are all vital in realizing your goals, and they could be discussed ad nauseum. However, this article is going to focus on how a predilection for the way open source software can benefit your career. Since open source skills are different than a number of other areas throughout the corporate landscape, you must utilize that difference to your advantage. The message is simple: get or stay active.
You might be sitting there thinking to yourself, what does he mean by saying get or stay active? Is he talking about reading the latest O'Reilly book on the Linux kernel or Python programming? Or participating in formal training programs, such as those offered by the Linux Foundation? Those are things you should be doing on a regular basis, but again the focus here is exploiting the nuance in open source development practices to your benefit.
Therefore, how does one position themselves for the future in the open source space? It is a poignant question that every developer should be asking themselves in good times and bad. I will break this into two segments. The first one will focus on the primary way people that are currently unemployed can get back on track. Then I will touch on what people can do, even though they are currently employed, to further their career prospects.
For those that are unemployed, stay active in development. Even though you are not getting up and going to the workplace on a daily basis, there is no reason for you to let your skills lose their luster. You chose to get involved with development utilizing open source based software for a reason and it has the potential to be your biggest friend if you use it to your advantage. You have all the opportunity in the world to stay relevant even if there is not a weekly check for you to cash at the moment. After all, it is open source. Just because you are no longer working for XYZ company, you can still make meaningful contributions. And, those contributions will not only prepare you for your next role, they could lead you to your next role.
The key is the selection of the project(s) you decide to contribute to. I applaud people that get involved with projects that have little to no following. These people have an itch and they decide to scratch it. That is an extremely honorable goal. But, if you are looking to contribute to a project that could possibly lead to employment, find one of relevance to your skills that has a following. It is very easy to find out the amount of participation in a project by going through the mailing list or spending some time on the IRC channel for that project. This will give you a good indication of the activity level and the potential number of companies that deem this work critical to their operations. If they are employing people to contribute code to that project, that is something that you should find intriguing.
Once you find the project, get active. Depending on your skills and experience, there is always an avenue to get active. Initially, I would monitor the development and communication for a period of time to get a feel for the group and the processes they have installed in their development process. Once there is a comfort level in that regard, it is time to dip your toes in the water.
Perhaps you can start testing some of the code. There always seems to be a need in that area. If you are doing some testing of the code base, you might come across a bug. You can either do one of two things at that point. You can pass the bug along to some of the other developers or, if you have the skills and the comfort level, you can write a patch for that bug and submit it to the group. If you can get that patch accepted into the code base, you are well on your way.
Your name will be attached to that patch. Nobody can take that away from you. As important as it is from a technical perspective, and probably an ego perspective, you just took a page out of Self Marketing 101. Being that you are unemployed, this is critical to you. If you are fortunate, other members of this project will start to pay close attention to your contributions. At that point, there should come a time where some of those developers start to discuss your skills internally within their corporate framework. When an opening arises within that company, you could be in a position to land that job based on the rapport you have developed with this group.
All in all, it is a beautiful way to network while being active in the development process. There are not a lot of other segments of the technology population that are provided with this type of opportunity. It is one of the truly great things about open source software.
For the lucky folks out there that are not concerned with finding new employment at the moment, you are obviously among the fortunate. But that is not a reason to just rest on your laurels. If you want to make an impact in your career, it is always best to stay active. You are, of course, active with your current work, but take advantage of the opportunity to explore. More than likely you have other interests in the technology space outside of the one(s) you focus on on a daily basis. It never hurts to round out your skillset to avoid getting pigeon-holed into one specific area.
Fortunately for you, you do not need to focus on the activity levels of a project. No matter the magnitude of a project, each one starts off small. Thus, you may find yourself involved in a project that takes on a life of its own and results in greener pastures for you in the future.
As I have stated before in this article, the true benefit of being a Linux/open source developer is the ability to stay relevant in any economic environment. That is what differentiates this niche within technology from others, as well as other sectors of the economy. You are afforded this luxury with being interested in this space, so take full advantage of it. Through the years, I have seen engineers make significant strides in their careers through the contributions that they have made to open source software. And this door is open to everyone.
Sure, there are other more traditional ways of advancing one's career, but when you take open source software into consideration, the ability to contribute is the differentiating factor.¬†