Using Your Open-Source Contributions To Land a Full-Time Job
Nerval's Lobster writes So you've worked on an open-source project, and you want to leverage that experience to move your career forward. In theory, there's no reason an employer should shun your experience, just because you did the project from home on your own time. But how can you actually leverage that project contribution into a full-time gig (assuming you want one, of course)? Developer Jeff Cogswell offers some tips: First, make sure that any project you present on your resume is a good one; pointy-haired bosses have a nasty habit of attribute the less-than-stellar elements of a project to you, even if you weren't responsible for them. Second, be prepped to talk about deadlines, bug reports and fixes just as if the project were something you'd done for a job instead of just the pleasure of contributing to something cool. Those are just a few of the ways to use open source to your advantage, but others abound.
I got my job offers thanks to my OSS project, including rather spammy google requirement mails.
As the sole author I got swamped with feature request and bug reports, which lead me to a policy of pretty much ignoring or closing with no comments anything I knew I wouldn't be working on immediately.
So don't worry about maillinglists showing you don't provide stellar support, since that's bound to seem lacking and hopefully you're not applying for a position where you need to deal with that kind of boring stuff.
I can has job?
pointy-eared bosses have a nasty habit of attribute the less-than-stellar elements of a project to you, even if you weren't responsible for them.
Damn those elven bosses!!
Protip: It's pointy-haired boss.
Computers aren't the only thing networking, people do it as well ;). One of the main things you do when contributing to an open source project is establish social and business relationships with those people most likely to be able to connect you to a job, directly and indirectly. Smart recruitment would have companies employ people to contribute to open source and specifically vet fellow contributors with a view to recruiting future staff. Basically companies can forgo the whole trial period of trial and error when it comes to recruiting essential staff by being able to assess potential employees in a voluntary work place over an extended period of time. FOSS is a public showcase of the efforts and abilities of skilled people and in terms of the relationships of the people involved, how well they work with others in a voluntary environment. Even when you are already employed it still remains the most viable opportunity to showcase all of your skills in a public environment and also to maintain multi-company and multi-national relationships with people that can help you define your future dependent upon of course how well you play with others. For all the three letter et al agencies around the world, it also provides the opportunity to resist the idiotic temptation to break global computer security and instead focus on gathering knowledge on relationships between the people involved and to do their own, ugh, recruiting ;).
Chaos - everything, everywhere, everywhen
Treat is a developer's portfolio, collect things you have done and present them as documentations of your skills (or skillz depending on how hacky they are).
I got a job working at Netscape (Now Mozilla) because I spent my free time contributing reduced test cases to bugs through bugzilla. Asa Dotzler, volunteered his time managing people like me, and picked up a job similarly. I referred Blake Ross to Netscape shortly after I joined because he was working with us, helping with bugs. The key for all of us, was that contributing allowed us to get job training - training that Netscape wouldn't have to provide. It's tough for a hiring manager to determine if someone is skillful based on their resume, but it's easy to see how someone will fit in your organization when they're already contributing to it.
Joseph Elwell.
who has ruined firefox
I created API I/O Abstraction, APIObject and API Chaining, show them working in Grails API Toolkit, am developing them out in spring-boot and have been interviewed by Amazon, Apple, Paypal, Netflix, Comcast... literally everyone but Google. But have yet to land a job. Mainly because from what I am told, my work is great but too cutting edge, just what they need but would require a rewrite, fantastic but not in the tools they want, etc etc. I'm finding you can create tools that will change the world but even if everyone agrees that they would and that they need them, they may not be ready.
This is my sig. There are many like it but this one is mine.
There are many reasons to look for developers via their OSS contributions:
For the first 3-4 years of that company, we only ever hired developers via our own searching, or other top notch developers they knew from previous jobs.
I would strongly recommend that developers contribute to OSS projects as a result. One of the difficulties of new grads is that they aren't able to get experience in some area, but contributing to an OSS project is "free experience building" for the developer in whatever marked segment they want to learn about. Becoming well known in a particular project (starting small and taking over progressively more complex tasks) not only builds a lot of experience, it increases their reputation in that community, and will make them a much better hiring candidate even if they aren't cherry-picked in the manner I described above.
It may even be that whatever OSS project they get involved in will become a startup of its own and they can get in on the ground floor and make their own job.
Before too long, some PHB will read through something like this and expect *all* developers to want to work for free.
If you were me, you'd be good lookin'. - six string samurai
I ran five Battlefield 3 servers on two continents for a group of about 3500 registered users, and before that a Bad Company 2 server in America for a year or two. We had a Steam chat bot (IRC is Dead in this era, especially for games) that you could interact with and kick unregistered players. The first version was crude PHP run off of a godaddy account to register your account for Bad Company 2. The steam chat bot was some ruby glue code triggered by an AutoIt script/executable.
But later with Battlefield 3, we rewrote the whole system from the ground up. ChewieBot was a C# program that used an OpenSteam API dll, and called a URL via json which authenticated against another guy's custom Steam Authentication db (he handled the backend registration using the offical Steam API) and then we ran a python script from there to actually connect to the server and kick the guy(s). This actually ended up being so successful that we were blacklisted by the reddit guys on multiple occasions despite being a top 10 server. Another guy did the website redesign including custom CSS work. I didn't do very much of the coding, most of my skills were in project management and having the technical knowledge to pull together resources and people and make them work.
Over four years I worked with about 20 people in total to make the system happen and keep it running, plus bringing in regular funding to pay for the servers, mumble servers, and the actual game servers (never pay for your own servers, you're already giving them your time). All in all the project spent about $3500 in hosting, mumble server fees and the lion's share, top notch game servers (about $114/mo each) over four years.
I ended up getting the job with those project management skills I learned while putting everything together. I write a lot of server scripting/automation and also project management working with business analysts and our appdev team(s) for various internal groups' dashboards, interfaces and whatnot.
At least one other guy used the ChewieBot project to get a job as well, he added the json capability to give him a talking point in interviews. The guy who did our db back end already has a job doing C# stuff at an advertising data mining company in the UK but is pretty fantastic at what he does. With all the API hooks, free or nearly-free VPS hosting and a popular game it'snot difficult to build a reputation and portfolio (not to mention the real-world skills of dealing with true nerds) that will take you places.
moox. for a new generation.
This. 1000% this.
Especially for new grads, folks entering a branch of coding they haven't done professionally before, or folks looking to change careers (or come back to tech after some time away).
I see resumes from students all the time with all the same projects (because they were assigned that in school) and two things make you stand out:
1. Doing stuff that clearly you have a passion for (or at least an interest in). That may mean running a soccer stats website that scrapes other sites and amalgamates it, or it may mean contributing something to an existing OSS project, or it may mean putting something up on github.
2. Being able to speak intelligiently about why what you did was any good (or that you at least recognize why it sucked). Many students in particular have trouble eludicating design details and/or the "why" of their choices--even a "we chose PHP because it's what the other team members knew" is OK, as long as there is a reason and a defense.
Contributing to OSS is terrific because:
1. I can look at your code to see if it's any good, and
2. The code is open so I don't have to worry about possible legal encumberances to talking about it, and
3. I can be reasonably confident you know how to use source code control and/or play nice with other developers.
If you're not VERY confident in the other stuff on your resume, OSS contribution is the best thing to put in a portfolio.
"Time flies like an arrow; fruit flies like a banana." --Groucho Marx
Unless you are a Larry Wall or someone whose open-source contributions have given you name recognition in the software community, does contributing to open source really matter? Would some hiring manager really look at someone contributing bug fixes to an open source project and use that as a decision-making difference? I am skeptical. Unless you are a "name" developer with a high profile, I can't imagine contributions to open source making much difference.
The real reason your open source skills don't help get you a job as much as you might like?
The business world uses the Microsoft foodchain. Simple as that.
Like it or not (personally, I don't, and I say that as someone who started as a Linux guy - But pla gots ta eat, son), if you compete for a job against someone similarly competent overall, but familiar with MSSQL, VS201X, Azure, and all the rest of the relatively recent MS buzzwords - You may as well not even go back to the second round of interviews.
Even worse - And I say this from experience - The few shops that really do use Linux in production environments do so because you'll have an annual IT budget measured in hundreds of dollars with an expectation of five-9's uptime.
/ Cue a dozen responses of "but we use Oracle / Linux / SAP / XServe at my job" that do more to prove my point than refute it.