Open source software development was accelerated by the COVID-19 pandemic, which increased the number of remote work environments. Because of that, businesses required complex solutions for overcoming the barriers created by remote work, and interestingly, organizations hoping to gain a competitive edge and stay up-to-date chose open source technologies. According to the Open Source Services Market Report, the global open source services market size is expected to grow at a compound annual growth rate of 18.2% during the forecasted period, reaching $50 billion by 2026 (from $21.7 billion in 2021).
Due to that, recruiters have been looking more and more for open source talents. According to The Open Source Jobs Report by the Linux Foundation and EdX, 92% of hiring managers have struggled to find open source talent and 97% of recruiting managers mentioned that hiring open source talent is a priority for them. Furthermore, open source developers are highly paid! The average salary of open source developers in the United States is $123,411/year.
Hence, here's your chance to make a difference in the open source field! If you are interested in finding a job in open source, this article is for you!
How to have/prove experience with open source technologies?
Well, the easiest way to have/prove experience with open source technologies is by contributing to open source projects. There are many ways to contribute to open source! You can start by submitting bug reports, writing documentation, or submitting patches, for example. However, in order to build a solid career in the open source field, you might need to acquire appropriate credentials in order to do so.
A good start is to have open source certifications. In fact, 72% of hiring managers are more likely to hire someone with certification. Additionally, in 2021, 88% of employers prioritized hiring certified professionals, an increase of 87% over 3 years.
Figure 1: Percentage of employers prioritizing the hiring of certified professionals. Image extracted from The Open Source Jobs Report.
But then, there is the question: What technology should you take your certification in?
Technologies of Highest Importance to Open Source Hiring Managers in 2021
The Open Source Jobs Report found for the first time in its history that cloud-native technologies have surpassed Linux. In fact, there was an increase of 455% in demand for Kubernetes certification from 2019 to 2021. Figure 2 shows the technologies of the highest importance to open source hiring managers in 2021. As you can see, it might be worth investing in certifications related to cloud/containers technologies, Linux, and networking technologies.
Figure 2: Technologies of Highest Importance to Open Source Hiring Managers in 2021. Image extracted from The Open Source Jobs Report.
Open Source Certifications and Training Courses
Now that you know what is in demand on the market and that hiring managers are more likely to hire certified professionals, it's time to take a look at some open source certifications for beginners for Linux and Cloud/Container technologies. To help you to have your certification, we will also present some training courses.
Git
The base of open source is to work in a distributed environment. For that, first I recommend you to learn Git., and this course provides a great introduction to it: Git for Distributed Software Development (LFD109x).
Linux
- Open Source Software Development: Linux for Developers (LFD107x): explores the key concepts of developing open-source software and how to work in Linux. This course is an introduction to Linux designed for developers. You'll learn how to install Linux and programs, how to use desktop environments, text editors, important commands and utilities, command shells and scripts, filesystems, and compilers.
- Linux Tools for Software Development (LFD108x) examines the tools necessary to do everyday work in Linux development environments and beyond. It is designed for developers with experience working on any operating system who want to understand the basics of open-source development. Upon completion, participants will be familiar with essential shell tools, so they can work comfortably and productively in Linux environments.
Certification | |
---|---|
The three aforementioned training courses will allow you to take your first open source certification: Professional Certificate in Open Source Software Development, Linux, and Git. |
After doing the courses for beginners, if you wish to continue learning about Linux development, take a look at the full catalog of the Linux Foundation Training and Certification website. I recommend, particularly the Linux Kernel Debugging and Security (LFD440) course for experienced developers who wish to learn about the Linux kernel’s methodologies and internal infrastructure. It includes hands-on exercises and demos that provide the tools needed to write and debug Linux kernel code.
Cloud/Container technologies
- Kubernetes and Cloud Native Essentials (LFS250) is designed for developers, administrators, architects, and managers who are beginners cloud-native technologies and container orchestration. This course will give you an overview of cloud-native technologies, and then dives into container orchestration. You will review the high-level architecture of Kubernetes, understand the challenges of container orchestration, and how to deliver and monitor your applications in distributed environments.
Certification | |
---|---|
This course will prepare you forthe Kubernetes and Cloud Native Associate (KCNA) exam. |
If you intend to work with cloud-native technologies and pursue CNCF credentials, take a look at the courses Certified Kubernetes Administrator (CKA), Certified Kubernetes Application Developer (CKAD), and Certified Kubernetes Security Specialist (CKS). To learn more about Kubernetes courses and certifications, check their training page.
An approach to creating cloud applications is microservices [2]. With it, each application is built with multiple services running their own processes and communicating through APIs. Microservices enable applications to be developed faster and it is easy to make changes to them [1]. One key feature of microservices is that they are very small, making them a perfect match for cloud containerized applications, which are also smaller and lighter weight than traditional virtual machines. If you want to learn more about microservices, consider taking this course:
- Building Microservices Platforms with TARS (LFS153x) will teach you how to efficiently develop microservices programs using different programming languages and quickly deploy the corresponding services into applications. Upon completion, you will wield a powerful skill for understanding microservices architecture and should be able to quickly build stable and reliable applications based on TARS.
Certification | |
---|---|
This course will prepare you for the Certified TARS Application Developer (CTAD) |
TL;DR:
Companies are looking to hire more open source professionals and to build a solid career in open source, you need to take some training courses and certifications in open source technologies.
About the author:
Isabella Ferreira is an Ambassador at TARS Foundation, a cloud-native open-source microservice foundation under the Linux Foundation.
References:
[1] https://www.ibm.com/cloud/learn/microservices
[2] https://www.netapp.com/knowledge-center/what-are-microservices/#:~:text=and%20container%20technologies.-,Benefits%20of%20using%20cloud%20microservices,between%20services%20with%20API%20communication.