Spruce Up Tech Resumes With Skill Timelines

A while back I had a bit of a chat with Jason about making tech resumes more interesting by presenting information differently: The problem I aim to solve is that listing experience with a couple technology stacks as a laundry list of keywords doesn't automatically communicate how recent or deep that experience is (I don't really want to walk into an interview and get grilled about VB.NET, which I haven't used in 6 years.)

I propose to improve things a bit by mapping whatever you'd currently include in a bullet list as a stacked timeline:

I bashed out a bit of code to generate these graphs (grab SkillTimeline on GitHub). An interesting requirement I had was that I wanted the output to be a vector graphic, as my resume is ultimately compiled to PDF by LaTeX. So I wrote something that would read in a plaintext file of skills and dates, auto-size everything properly, and generate an SVG document with the stacked timeline.

The input looks like this (I wrote an EBNF grammar when planning out the project, but it's really just a string, a colon, then comma-separated date ranges):
# Sample SkillTimeline input file.
# Provide one skill per line, and comma-separated date ranges.

SilverLight: 2010-2011.06
JavaScript: 2010-2011.06
C#: 2003.10-2006.06, 2009.01-2011.05
ASP.NET: 2004.01-2006.06
C: 2003.09-2005.12, 2009.01-2010.12
Java: 2003.09-2011.06

And the output looks something like:

Screen shot 2011-05-01 at 8.14.21 PM

Grab SkillTimeline on GitHub.