On Code as the Resume: Two Creative Code-Resumes That Helped Me Get Hired

11:53 AM 0 Comments

Read about five others after you are done here!
A traditional resume is a PDF or doc file with sections like Objective, Work History, and Education neatly organized into columns and sometimes squeezed onto a single sheet of paper for rapid perusal of keywords.

It's important to stand out, though, and as long as you are standing out, why not have a little bit of fun with it?

The two stories that follow are two times where I wrote code as my resume. This isn't a portfolio nor an assigned coding assignment from the interviewer. The code is a resume and the resume is written in code. Hopefully, they will give you some ideas on being creative with the job application process.

XKCD: Meta-Analysis


About 6 years ago, I was applying for an internal position at my company. The team developed tools and libraries for the rest of the 20-30 development teams in the organization which meant that its standards for acceptance were pretty high.

When I became familiar with some of the folks interviewing, I got a little nervous. One definitely had more experience than I.

So, I determined to create a resume that would demonstrate my coding skills in addition to acting as a traditional resume.

Welcome Adam.java. When run in the following manner:

java Adam

It will print out the resume to the console as you might expect.

This is already a little bit nerdy, but not nearly enough to draw their attention. It's probably just enough trouble to annoy the interviewer instead of bump me up the charts.

Welcome Eve.java. Now, run the application in the following manner:

java Adam Eve

And the two will randomly splice a new resume together, creating a new Java file: Adam_Eve.java. It will have taken some of the attributes from the Adam resume and some of the attributes of the Eve resume to make a new, randomly mutated resume that has some of the attributes of each of its precessors.

Now, Adam_Eve can be run:

java Adam_Eve

to see the new resume, OR

java Adam_Eve Eve

to generate a new mutated resume.

I sent the above instructions in my job application as well as the Java files Adam.java, Eve.java, Seth.java, and Carol.java. I stated that they should feel free to splice resumes with each other until they obtain a resume that they like.

The words from one of the devs made my day: "That was the coolest resume we have ever received." Happily, I got the job. :)

I have this code hanging around somewhere, but I made what I thought was a better one later on that was a Mission Statement Generator. You can read about it in the README at its github link: https://github.com/jzheaux/mission-statement-generator. It wouldn't be too difficult to alter mission-statement-generator's code to generate a resume, if you wanted to try it out!


I had a client once who stated that he needed Maven, Spring, Hibernate, Amazon EC2, and JAX-RS experience. He also wanted to see a portfolio. The portfolio was moderately problematic: I don't really have one since nearly all my work over the last 15 years has been backend.

So I decided that there was no time like the present. I turned on my stopwatch and started to build a resume out of Maven, Spring, Hibernate, Amazon EC2, and JAX-RS. Three hours later, I had something simple but that clearly demonstrated that I could build a multi-module project using Spring and Hibernate, deploy it to Amazon EC2, and use CXF (a JAX-RS provider) to create a client and ReSTful server.

You can see the code here:  http://github.com/jzheaux/resume

You can see the resume here: http://resume.joshuacummings.com/resume/100

And you can query the ReSTful API here: http://resume.joshuacummings.com/resume-ws/resume/100

For example:

curl -H  "Accept: application/vnd.joshcummings.com-v1+json" http://resume.joshuacummings.com/resume-ws/resume/100

As you can see, the app doesn't do much other than demonstrate each technologies' "happy path". However, I liked that it was "meta" and, in the end, they hired me so maybe it was worth it.

Should you do this?

In each case above, the situation was somewhat specialized. In the first, it was an internal position, so I knew a couple of the devs that would be looking, and I knew that they were total geeks and would love seeing a resume like that. Also being internal, the volume of resumes was low so I knew they would likely take a minute to actually follow my instructions to run the program.

In the second, I again knew that the application volume was low; further, they had asked for a portfolio, so really I was combining their two requests into one by sending them a product that shared the relevant resume info, demonstrated in the context of a portfolio.

On the other hand, there are several stories of people doing various stunts that both demonstrate their ability to do the job and get them noticed at high profile companies like Google.  Then there are application tactics that are simply memorable, but don't really manifest the applicants abilities.

So, maybe there is some benefit other than the personal satisfaction of "going meta".

What's Next

While more boring, the second one I think is better because it is easy to inspect everything; some non-engineer doesn't need to fiddle with java command-line to see the resume. It also retains the potential for video, audio, and other application-oriented stuff to actually make it a more delightful experience.

Maybe if I ever apply for an Android position, I'll create a resume app with a Mutate button on it. Doesn't that sound like fun?


"I love to teach, as a painter loves to paint, as a singer loves to sing, as a musician loves to play" - William Lyon Phelps