It's common knowledge that companies are looking for developers with open source skills -- but how do you help them find you?
"Disney, John Deere and Walmart. Any idea what these three companies have in common?"
The question was asked on Wednesday by Brandon Keepers, GitHub's head of open source. He was about three minutes into a session he was conducting called "Contributing to Your Career" at the All Things Open conference.
"All three of these companies are actually software companies," he answered after taking a moment to tease the audience. "They do other things. They build tractors, protect trademarks and build amusement parks, and sell groceraies and things that you need everyday. But they've also become software companies and they've become really active in open source -- and they're not alone."
This wasn't a surprise to anybody in the room. They were at the largest enterprise level open source conference on the East Coast. Many of them were also locals, meaning they lived and worked in and around Raleigh, North Carolina, the hometown of Red Hat, the world's most successful open source company, and a town some consider to be the Silicon Valley for open source.
"The reality is that every company in the world is becoming a software company, no matter what industry they're in," he explained, "and every software company is using and often participating in open source."
He pointed out that even with companies involved in proprietary projects, there will invariably be components that are open source. Those components can run the gamut from operating systems and tools to databases and programming languages. What this means is that open source developers are in demand.
"A recent jobs report says that 87 percent of hiring managers say it's actually hard to find open source talent," he said. "They go on to say that open source is one of the top recruiting priorties for them this year. So these people are trying to find more developers and they can't. They basically want to give you money and they can't find you."
The problem for developers with open source skills but without a resume is to figure out how to make themselves visible to these potential employers. According to Keepers, one of the best ways is by contributing to open source projects, which might seem daunting to someone who's just getting started.
He pointed out that there are several thoughts on the best way to begin contributing to projects. Some say to get started by finding a random bug to fix, and there are actually websites just for that purpose. Another is by finding a project that is open to newcomers. However, Keepers likes the "contributor onion" approach, which might take a little longer but which will be more effective in the long run.
"In any project, first you start out as a passive user," he explained. "Say you're building a website and you use jQuery, so you have now become a user of the open source jQuery project. As you use it more and more, you might discover ways it can be improved, things that can be added around it, maybe documentation. You start to get engaged with the project. Maybe you're recording issues and you become an active user. Then, over time, as you get more involved, some day you find yourself as a contributor."
In other words, he sees this as a four step process.
"First, you have to have a problem. Second, you have to find software that solves that problem. Third, you have to find deficiencies in that software. Fourth, somehow report those deficiencies and start to engage with the project. Now you've become an active user. You eventually start to make improvements, you engage in conversations and at some point you wake up one morning and you're a contributor."
Taking this approach will not only help build an open source resume, it will bring valuable experience working with the open source development model.