"Work on stuff that matters" is a famous call to action from founder and CEO of O'Reilly Media, Tim O’Reilly. But, how about working on stuff that matters while getting paid for it? There are an abundance of open source-related jobs out there if you’ve got the right skills.
Mark Atwood, Director of Open Source Engagement at HP gave a talk on How to Get One of These Awesome Open Source Jobs at the Great Wide Open conference in Atlanta, Georgia this year (April 2 - 3). His talk was originally targeted to students, but he later removed the "Advice for Students" part because the seven tips below really apply to anyone looking to score their open source dream job.
"When you work on open source, you get to work on things that benefit the world," said Atwood. Adding that, "you have to do the work before you get a job." He also mentioned that while working in the open source community, you will develop really great peers and best friends. Working on open source is a lifestyle that has embraced a philosophy. More importantly, Atwood noted that "once you have an open source job, you are portable."
While his talk went into more depth on the topic at hand, this is a summary of the tips he provided. I would encourage anyone who gets paid to do what they love to add their advice in the comments.
7 tips for open source job seekers
Learn how to write clearly. After you’ve written something, have people edit it. Then re-write it, taking into account the feedback you received. The most important language you need to know has nothing to do with coding, it’s the English language. Atwood also says another key to writing is to write all the time.
Learn how to speak. Speak clearly on the phone and at a table. For public speaking, Atwood recommended Toastmasters. "Meet and speak. Speak and write," Atwood said.
Be reachable. Publish your email so that people can contact you. Don’t worry about SPAM. Finally, Atwood stressed, "Don’t be a jerk. Your reputation is hard to change and the Internet is forever."
Learn how to use a debugger. And you will need to learn distributed source control, which today means git and GitHub.
Relationships and peers
"Open source works because it’s a community working together."
To start those relationships within the community, seek out local people to meet first. Use tools like Meetup.com and search for co-working spaces, hacker spaces, and clubs at local schools and libraries/centers. Then, seek out remote people around the country and world. Learn about them and their projects first by searching the Internet.
Attend conferences and events. This is a great way to network with people and meet them face-to-face.
In building these relationships and meeting your open source peers, Atwood again suggested, "Don’t be a jerk." He added to that this time, "Don’t be creepy."
When Atwood said, "you have to do the work before you get a job," he was serious. "Find a project and get involved," he said. Sign up for mailing lists and get on Stack Overflow. Start reading questions and answers, then start answering questions. Start reading bugs for the project, then start fixing bugs. After you’re comfortable with that, consider adding feature request and then coding the features.
In doing the work before the job, you’re building your skills and your credibility. And, in the open source world, reputation is very important (more on this below).
Collaborate with people all over the world and start using the tools that open source projects use. You’ll need to be familiar with IRC (Internet Relay Chat), bug trackers, and email lists. Using git to learn about pull requests and log comments is also an important skill.
Learn how to do code review and paired programming. Why? Because two of you will be smarter than one of you. This will make better code and removes ego from it.
In the world of open source, you want other people to know what you do. Have a portfolio of your work and your mail messages, commits, and other contributions. By doing this, you’ll be able to pair you portfolio with your resume. (Some employers may place the work in your portfolio on a higher level than the work listed on your resume.)
Keep your LinkedIn profile and social media profiles up-to-date. And again, Atwood stressed: be findable—no one wants to waste time looking for the best way to contact you.
Getting that job
How do you find a job opening? Once you find an open source project, you’ll find that many of the projects have a companies attached to them. Once you’ve built up your reputation, your peers will loop you into job openings that could be a potential match for your skills. Listen to speakers at conferences and events to seek out and find job opportunities. But this doesn’t mean you should wait for the job to come to you.
Once you have the job
Atwood offered advice for after you begin a career in open source. Three things you should be mindful of are your health, money, and continued education.
On health, Atwood said to avoid geek neck by being ergonomically correct in your typing. Also, don’t work for a jerk. And, take care of yourself by working out—you are smarter when you are exercising and you have more energy.
On money, Atwood recommended to avoid debt, to max out your 401(k) and IRA contributions, and to invest early and often—adding that you should, of course, consult your lawyer and/or financial advisers.
Lastly, Atwood said to keep learning. Skills will always beat smarts. Be sure to schedule time for learning and have some fun! Go code fun projects or find a maker space and start tinkering.
Atwood recommended three books as you begin your journey:
- Oh the places you’ll go—by Dr. Seuss
- Getting things done—by David Allen
- How to fail at almost everything and still win big—by Scott Adams
Share your tips for getting a job in open source in the comments.