My Worst Interview

A few years ago, I was interviewing for a software position at a large web startup and had the following conversation with a someone in HR during a phone screen:

Recruiter: We have a few preliminary questions we always ask to determine if a candidate will proceed.

Me: Sure.

Recruiter: Do you have J2SE?

Me: Yes, I've worked extensively with Java, Spring, and Hibernate making web applications for...

Recruiter: Yes, yes, but do you have J2SE?

Me: (realizing we were playing poor-grammar-buzzword-bingo) Yes.

Recruiter: Great. Next question.

Me: Ok.

Recruiter: We're looking for real rock stars here. How good are you at programming on a scale from 1 to 10? Just give me a number.

Me: If you just want a number, probably about a 6 or 7. (I had recently seen this Programmer Competency Matrix and fell squarely in "Level 2")

Recruiter: Well, we were really only looking for only 9's and 10's.

Me: Oh (stunned... waiting for the recruiter to make the next move)

Recruiter: Do you have any friends that are 10's that I could reach out to?

Me: You're asking me if I have friends who would rate themselves a 10 as a developer?

Recruiter: Yes, we're really looking for a star-hero developer. (You read right. A star-hero... like Mario)

Me: I wouldn't be comfortable doing that. Sorry. Good bye.

Needless to say, I was not asked back for an in-person interview. This is pretty much as classic as the Dunning Kruger effect gets in an interview. 

Both experiened hiring managers and experienced job seekers have worked with people who think they are much better than they are. Effective hiring managers don't expect candidates to evaluate their own skills on an arbitrary scale. They rely on the interview process, references, code samples, etc. Experienced job seekers are wary of interview processes asking you to self-evaluate your skills because they assume the current team has been evaluated similarly.

There's little (if not an inverse) corellation between people who think of themselves as the absolute best and those who actually are talented. The most effective people know that there's always plenty of room to grow.

More Efficient Screening Interviews - Part 1

At our first "speed interviewing" event, we received feedback on over 200 five-minute software engineering interviews. We asked companies and job seekers about what worked for them and what they liked to see. There were a few themes that should make your screening interviews more efficient and help you quickly eliminate possible mismatches. This piece covers more general screening tips. Later, we'll cover more technical screening tips. Remember, there are plenty of things you should be doing that aren't covered here.

Tips for Job Seekers

Before the interview, you should know what you offer in general and what you offer specifically to the company you're interviewing with. In general, you need to communicate your technical skills, growth, and experience. Most people don't have a problem with this. After all, it's probably on your resume. To to stand out, you should have tangible examples. Blog posts, code examples, design diagrams, and screen shots of past projects make a world of difference in an interview because so few software engineers have concrete examples to show. Additionally, be ready to state what you personally did on a project. You don't want to fumble through an explanation with vague answers about what "we" did.

Discussing your experiences is pretty standard though. To really give a good impression, determine the company's needs and how you can address those needs with your skills. Check out the job description; most have responsibilities and requirements sections. From there, it's just an exercise in reverse engineering to market yourself to a company. For a great example of targeting an employer's needs, see Leonardo da Vinci's resume.

At some point, the company you're interviewing with will ask you what you are looking for. Having a clear answer to this question benefits both you and the company. It can help you avoid working in a situation you would hate, and it can help the company determine if there is a deeper fit than just your experience coinciding with a job post.

Additionally, knowing what you want relates to skill and enthusiasm. When you don't know what you want in a job, companies may see you as desperate or lazy. When you know what you want, you have two strategies to combine when speaking with a company: 1) express passion for technical problems and say exactly what you want to do or 2) express passion for the company's mission and suggest what you can do for the company (or say that you're open to doing anything). You'll need to mix both of these themes together, but from what we've seen, larger companies prefer more of 1 and smaller companies prefer more of 2.

Tips for Companies

Quickly state your company's mission, interesting technical problems, company size/trajectory, job responsibilities, and job requirements so you can start focusing on the candidate. Practice before the interview if you have to. The better you do here, the fewer questions the job seeker will have to ask and the more you can focus on evaluating them.

Once you've introduced your company, you need to quickly determine if you're dealing with an active or passive job seeker. Active job seekers are ready and willing to switch jobs for a variety of reasons. They may resent some part of their current job situation, they may have personal reasons for looking for a change, or they may be unemployed. Passive job seekers enjoy their current job but casually consider a change as opportunities present themselves. Your strategy will vary based on what type of job seeker you're dealing with.

If the job seeker approached you, they're likely an active job seeker. By definition, active job seekers are more desperate than passive job seekers, so you'll have to balance enticing active job seekers with keeping them from parroting exactly what you want to hear. If you say, "We're really only considering someone who enjoys dealing with dozens of last minute design changes," an active job seeker can easily say, "I love last minute design changes!" A month after hiring them, you realize that maybe they weren't completely honest. To combat this, consider leading off by asking the job seeker what they're looking for after you introduce your company.

If you approached the job seeker or you met fortuitously, they're likely a passive job seeker. They have the high ground. With passive job seekers, you must devote most of your efforts to enticing them while determining if they're a fit as time permits (you may need to find/make time later). Tell them about your company and focus on what you can offer this person: freedom, responsibility, interesting technical problems, influence over the business, great people, etc. Once you've got them hooked you can start validating that they're the right person for the job.

Some time after you've determined that the person is a possible fit, be prepared to have a preliminary conversation about compensation if you're at a startup. Startups are strange animals, and you want to weed out people that aren't ready to handle them. Tell the candidate what the compensation structure is like: all equity until funding, mostly equity with subsistence salary, mostly salary with some options, or primarily salary.

A word of caution: Be careful with the active/passive distinction. Unskilled people may appear as passive job seekers too. They may have carved out a comfortable hole where they have made themselves essential by writing unmaintainable code or by doing brainless work that nobody else wants to do. Also, remember that just because someone is an active job seeker doesn't mean they're not skilled. They may just really like your company.

What to do when there's not a match

From what we've seen, for one reason or another, companies and job seekers often determine very quickly that they are not a match for each other. What should you do if you're in such a situation? First, both sides should realize that there are likely no hard feelings involved. Figure out how you can help each other. Job seekers can tell their friends that a great company is hiring or evangelize the company's product. Companies can give job seekers career guidance or suggestions on how to approach interviews. Keep a good attitude about the situation, and don't appear to lose interest in a person or company the moment you decide there's not a match. You never know when you may need someone's help in the future.

Our next event will be next Tuesday in New York City (we hope to expand soon). If you're a software engineer or a company that needs software engineers, check out