Five years ago, the only engineering or computer science majors setting their sights on a career in writing software code for an open source company were the most hardcore of computer nerds. That was something done only by the true computer geeks, and it usually required an independent source of income. Experienced programmers knew the gravy train existed at proprietary companies, most of which avoided experimental operating systems that nobody in the business world would ever use.
Today, the divergent families of the Linux operating system have changed the software development landscape. The open source software concept has become so well established that working as an open source developer is no longer a laughing matter for new college graduates or experienced programmers.
The problem in getting hired, however, is demonstrating a unique set of job qualifications beyond an academic degree. Clearly, the untried college grad and mainstream programmer alike won’t find many golden opportunities waiting. Perhaps moreso than any other professional endeavor, getting even an entry-level, paying job as a Linux developer at an open source software company requires more than youthful energy and outstanding academic grades. It requires a record of online collaboration in respected forums.
“Most commercial software development today is moving toward the open source development model, so young developers who want to have good job prospects should get involved in open source projects early. Luckily, open source is a meritocracy, so if you’re good and get involved you can have an impact, no matter your age or formal job experience,” Amanda McPhereson, director of marketing at the Linux Foundation, told LinuxInsider.
No doubt the most noticeable change in the working culture at Linux houses is the approach to hiring. More times than not, the approach is ‘Don’t call us; we’ll call you.’ Typically, those without hands-on experience need not apply.
The job skills are different. Being a successful Linux developer relies as much on human management as technical skills. Working for many open source companies is much more likely to involve working remotely at long and odd hours, so Linux developers must be very self-disciplined, according to Barry Klawans, founding member of the Open Software Alliance.
This attitude is very prevalent at JasperSoft, where Klawans is the CTO. The hiring approach is different from recruiting procedures at many proprietary companies, he noted.
“Proprietary companies are looking for long-time loyalty from their employees and often hire entry-level candidates and wean them along,” said Klawans. “At open source companies, you don’t have a lot of pull on a person. The person wants to do the work and tends to be self-driven to remain there or move on elsewhere.”
Corporate attitudes differ greatly in terms of the career path requirements for software developers in an open source setting. Take, for example, Red Hat’s view about qualified applicants.
The typical software company is very formal and rigid with its hiring process. They look for specific courses of training and for standard markers in the work record, explained Jon Masters, senior software engineer at Red Hat.
“Red Hat does have a standard recruitment process. We do use industry standards,” said Masters.
However, from an engineering view, a job applicant does not have to be a young college graduate. Instead, Red Hat applies specific requirements to applicants depending on the kind of job being filled, he explained.
A New Set of Standards
Most executives at open source companies readily admit that flexible hiring standards differentiate a Linux mentality from proprietary work ethics. For instance, JasperSoft’s Klawans views a good developer as someone who can handle both open and closed source programming equally well.
“To really participate well you need to be able to communicate, especially in writing e-mail, blog entries, etc. You also need to motivate and guide others in the project and keep ego under control,” he said.
Leadership is vital for developers at all levels in the open source community, the Linux Foundation agreed. Software developers are expected to be independent but not isolated from team workers.
Many Linux development companies place major importance on a software developer’s ability to influence coworkers. Leadership is a key job skill for these programmers.
“Are you driving progress forward? Are you presenting papers educating your peers at open source events? Can you write papers explaining what you do and how to use your code? Do you participate in a wide variety of activities that enhance open source? Those things are all important to consider and something the Linux Foundation looks at closely,” said McPhereson.
More often than not, those are the very characteristics that engineers and code writers do not have to demonstrate when writing code for traditional software companies. In hiring open source developers, JasperSoft executives do not usually have to look for a candidate that meets these standards.
“They find us. When we find them, we hire them. We don’t focus on strict educational criteria the way other companies do,” said Klawans.
As strange as it may seem to most of the working world, expecting a Linux developer to be college trained specialist is not always part of the application requirements. Usually, code writing skills often take precedence, even if they are self-taught.
“Our focus [at Red Hat] is less on education and more on the applicant’s experience in writing software. But our view of the applicant’s experience level is different than other companies’ views,” said Tim Burke, director of emerging technologies at Red Hat.
Red Hat wants to see an involvement with developing open source experience. The company looks closely at peoples’ prior work and how they interact with others, he explained. That means the successful candidate needs an Internet trail.
“The majority of our work is done online, so we get a much better representation of a person’s work record found in the e-mail archives,” Burke suggested.