Wednesday, August 24, 2011

Hiring Online Engineers

(By the way, Maxis is hiring).

I've interviewed a lot of candidates over the years. At my last job, we seemed to have an unending stream of candidates because we had learned to be picky. And I didn't even do the phone screens that kept the numbers down. But I did do what we affectionately called the "make them cry" part of the interview, drilling down on Java knowledge as much as I could.

At Maxis, we have less candidate churn, but I now have to sift through the resumés and do the phone screens. And I'd like to pass along some advice about getting your resumé to the top of my pile. None of these are absolutes, but the more flaws in your resumé, the greater your strengths need to be.

First, have someone proofread your resumé. I don't care if English is your first language or not; get a good editor to give you feedback. I'll wince at one typo but let it slide. Much more than that, and I begin to wonder if your code will be as unprofessional as your text. A recent candidate said in the header of his resumé that he's a "self-mortification" person. I'm guessing he meant self-motivated, but clearly not self-motivated enough to have someone sanity check his text.

In a similar vein, make sure you use the correct terms when discussing things you know. You do not "program in" AJAX, HTML, XML, or CSS. You may understand them, but it doesn't look like you do if you call them programming languages.

Next, keep your resumé brief. I've always liked the saying, "the only thing on the second page of a resume should be the Nobel Prize you won," but I am in the minority. The style du jour is to make your resume as long as possible.

I'll grudgingly accept a two-page resumé even without the Nobel Prize, but a recent applicant I saw had a many-page resumé with this line item: "Coded Perl functions, invoking subroutines and functions calling functions." In other words, you did some programming? And that was simply the most ridiculous in a long list. "Set up Object-Relational Mapping with Hibernate" is another common line item. For those who don't know, this involves writing a config file. If you have items such as these on your resumé, you're padding, and I'll think you need to pad because you don't have any real skills.

If you're a mid-level Java engineer with some enterprise software experience, I'm afraid your resumé looks like approximately 100,000 others. Spring, Hibernate, JUnit, Struts, MySQL, Oracle. I'm yawning already. So make your projects sound interesting. We don't all get to work on famous video games, but before I did, I worked on projects you've never heard of. And I made them sound neat. I focused on the compelling problems and described those. If you can't find interesting problems in your work, you're not a programmer I want to work with: Every problem is interesting in its own way.

I also look for personal projects on a resumé. Yes, people have families and whatnot. But think of great writers. They don't just write because they are required to: They write because they need to.

If you're working on personal projects, no matter how esoteric, you're telling me that you're so in love with programming that you can't simply kick it aside when you clock out. You're telling me you love the craft, the problem-solving, the tinkering. You're telling me that you're a programmer I want to work with.

1 comment:

  1. Hi Derek,

    We worked together in the past. I was one of the first guiders. Your post is very timely for my own experience. I recently went up for an interview and could have used many of these lessons. It is was a programmer/analyst opportunity to lead a tough integration project for a medium-size start up.

    What I did Right:

    1. I prepared well in terms of esthetics. Crisp suit leather portfolio, fancy resume paper, plenty of things in to show: code example, documentation example, 2 letters of reference. By the way what is your view on ties, I been going open color.

    2. I researched the company and the people I was going to be talking to using the "About Us" page of the company's website. I got a sense for the culture using their facebook page and twitter feed.

    What I did Wrong:

    1. I did not brush up on all the technical terms I put on my resume. Although I did not lie, that is just stupid, I currently hold a higher level organizational position that deals with these things on a more conceptual level. Questions to keep it specific from a "make him cry" programmer did catch me off guard and showed the dust on my technical knowledge.

    2. I started many of my answers in a self depreciating manner, such as "Although I do not have a full-time developers understanding of [a technical area in question] I can tell you what I do know [dusty answer]". I have done this before professionally and been made aware that it is not the best way to communicate. Perhaps my answer is exactly what they were looking for but I just put a dark shadow on it.

    3. Was I actually Overly prepared in terms of esthetic polish? Is there such a thing? For example my brother refuses to wear a suit to an interview but I always do. This time I turned it up a notch with more polish. Was it too much for that type of company, an aggressive start up?

    4. I actually got the interview using nothing but a resume generated from my LinkedIn profile. I did bring a classic format (2 pages, [cringe]) to the meeting but I felt it was a weird way to start each one of three conversations.

    5. I got a late start and had to run to BART and stress out. I was lucky and got there on time though.

    6. I forgot a writing utensil due to above.

    7. I was shy to keep a solid eye contact. Problem I have in general. How do I deal with it? I don't want to stare them down in arrogance ether.

    8. I was very clear how happy I am at my current position. Perhaps this is a mistake...

    speaking of which, I better get ready and head out to a job that IS willing to pay me. Hoping to hear back ether way from the place I interviewed with. Will update thread if I hear back. I don't expect it as I feel that I bombed hard on the technical aspects of the interview. However it was great experience to freshen up for the next interview.

    Thank you for the post, I hope to run into you at a Farmer's Market again sometime.

    -An Appreciative Past Colleague