At the 2011 Ohio LinuxFest, I gave a presentation entitled "Real World Job Skills the Free Software Way." In it, I detailed a number of ways in which free software improves not only one's hard technical skills, but also the softer social skills that are so often absent from professional development discussions. I focused on three hard skills -- programming, documentation, and packaging -- and three soft skills -- communication, mentoring, and professional networking -- and gave practical examples of how using free software and participating in free software projects can demonstrably improve one's image to potential employers.
One of the most interesting moments in my presentation occurred early when I asked for a show of hands of who had a GitHub or SourceForge or similar code sharing account. Most of the hands in the room went up. I then asked for a show of hands of who provided links to those accounts on their resumes. Only one hand remained up.
"Why not provide a link to your code on your resume?" I asked. I was, honestly, surprised that no one was doing it. Here's an excellent way to show to potential employers "This is my work", where that work includes not only code contributions but commit messages, bug fixes, community engagement, and much more. Such a link allows a potential employer to see what you're doing, and gives a great starting point for a variety of interview questions. This applies as much to sysadmins as programmers: automation scripts and time-saving solutions that you may have created go a long way to demonstrating your value to potential employers.
After my prepared remarks, I asked for comments from the audience. In particular, two people were currently hiring for new positions, so I wanted to hear from them as to what specific things they looked for in potential candidates. This proved illuminating, and largely mirrored the items in my presentation. Then one attendee asked, essentially, "I do PHP stuff on my own at home. How can I really put that on my resume in a way that makes sense to a potential employer?"
My on-the-spot answer was okay, but not great. I encouraged the fellow to get involved with a project so that he could then also list his participation in that project along with his PHP experience. Rather than just goofing around with PHP on his own, he'd be using PHP within the framework of a real free software project, and enjoying all of the ancillary benefits that come from such participation. This takes time, though, which may not help someone looking for a job right now.
What I should have said was this: you should list PHP on your resume somewhere, and expand upon it in your cover letter with an explanation of your passion for learning new things, an explanation of your problem solving methodologies, and a direct statement that you'd like to apply your passion to the benefit of this would-be employer. You're unlikely to get a full-time PHP programming position based solely on personal use of PHP, for example, but listing the things you've learned on your own on your resume should prove instructive to potential employers when evaluating you against other candidates for the position. Taking the extra step to articulate these things in your cover letter is even better.
I quite enjoyed giving this presentation, and I'd love to find an opportunity to do it again!