This past Monday, I attended my first career fair on the employer’s side of the booth. I’ve done a fair bit of hiring in my career, but this was still a new and fun experience for me. Career fairs have gotten a lot bigger than they were when I was a student, and the three of us manning the Mozilla booth had a constant flow of students to talk to (sorry for anyone who didn’t get to talk to us before the 4pm cutoff!).
I had a good time talking with the students and I’m sure that many are laying a path to successful careers in software. At the end of the day, one thing stuck out in my mind as being unexpected: where was the open source experience? I think that only a single resume I saw mentioned a GitHub account or some open source project that a student was involved in.
Many students just had their coursework to talk about. Here’s the problem with that: every other student has that same coursework. Using different paper for your resume is not going to make you stand out. Having something beyond your coursework will.
US News ranks the University of Michigan as one of the top 15 grad schools for computer science and in the top 30 undergrad colleges overall. Ann Arbor is not a big city, but the University of Michigan is a big, well-regarded school. UM is not a JavaSchool as almost all coursework is in C++. While I can’t say for sure, I doubt that this lack of open source experience is limited to UM.
I’d also expect that many students who are fans of open source software would likely gravitate to a Mozilla booth.
The students that seemed the most promising to me came across as loving to code. They did things beyond their coursework, in their spare time… They learned Haskell or programmed robots or compilers.
A great way to show your enthusiasm and your code is to be involved in open source.
It would be good for universities to offer a course specifically designed to introduce students to open source and get their code out there. Students would learn about:
- distributed version control
- working with people around the world
- navigating open source projects (using GitHub, mailing lists, IRC, etc.)
- possibly bits about licensing (it’s good to know the basics, at least)
And, they would even end up with code samples out in the wild that they can show to potential employers.
Remember what I said about everyone having the “same coursework” to show to potential employers? Not so for a class like this if the students are allowed to dive into different open source projects. You’d have students hacking on Rails or Node, Couch or Mongo, CoffeeScript or nginx. It’s good for the students, and good for the projects.
If you’re a student, don’t wait for this magical class to show up. The catch 22 of “can’t get a job without experience, have no experience because can’t get a job” no longer applies: anyone can step into open source. Just do it!