Hacker Timesnew | past | comments | ask | show | jobs | submitlogin

Here's a related question: I'll posit that there is a higher density of "very desirable" top-notch hackers being thrown into the job market than at any other time in my 15-year career. You know the people: the ones that rarely hit the normal job market because with one or two emails, they can line up their next gig in an afternoon throught their network or friends-of-friends.

For those of us who are hiring, what strategies can we use to ensure that we in-person interview more of those candidates (with whom we can generally sell them) and spend less time on the "perma job seekers" that seem to form the bulk of the job applicant population. I don't mean to sound overly elitist, but if I've only got 1 spot open, I want to take a shot at selling the very best candidates, and spend as little time interviewing the also-rans as possible. (This is in regards to professional hires; our college-level recruiting program is in good shape, and there's less change from last year there than in the landscape for professional hires)



Show some respect during the interview process. Possibly make their point of contact an engineer rather than an HR person. I interviewed with a company that had a technical recruiter who knew technology and I was very impressed by them for that.

Also keep in mind, how you run the interview process says volumes about what its like to work in your company. Taking > 2 weeks between responses shows lack of interest. Making a person have to "ask" for a plane ticket to come to the interview is a big turn off too. The interview process is a great time to show that you take care of your people and make it easy for them to do their jobs. Take care of us as candidates and we'll assume you'll take care of us as employees.

These are pet peeves. One other thing... communicate the type of position you're looking at putting the person in before lining up their in-person interviewers. I've had situations where I interviewed with people who did stuff I found interesting and I felt rapport with them. Likewise I had one company thought about putting me in a position completely wrong for my skills and the people I interviewed with had nothing in common. They later offered a position after the interview that was more in the right direction but this would have been good to figure out in a phone interview.

Thats my $.02.


Show some respect during the interview process. Possibly make their point of contact an engineer rather than an HR person.

I absolutely agree here. There's nothing which turns good people off more than feeling unappreciated, and HR people simply don't know what to appreciate.

communicate the type of position you're looking at putting the person in before lining up their in-person interviewers

I'd go a step further than that. If you're interviewing someone really good, don't put them through the standard interview process. Invite them to your office and talk to them about what you do. Show them around; have them talk to people in a variety of areas (if you're a large enough organization for that to make sense).

At the end of the day, ask the candidate where he/she thinks they could help you most, and ask your people where they think the candidate could help you most. If there's consensus between the candidate and your people, that tells you what to do. If there isn't consensus... well, then that person wasn't actually the great candidate you thought he was.


I also feel the need to comment about respect. I'm working now, for a great start-up in Palo Alto. Before starting here, though, I turned down an offer with a company that's actually profitable, because they were not just rude, but incredibly arrogant as well.

Insulting your candidates, and then calling them back begging them to come in for another interview, and then ignoring their availability... this is not a way to encourage people to work for you.


I have to echo your point about the response time. I recently interviewed with a large well-known software company, and I told them about some of my schedule limitations (due date on an existing offer), and the HR person seemed dodgy about it at best. My interviewer loved me, but told me that the company generally was unable to respond in less than 4 weeks.

If you want your potential hires to feel valued, move through the recruitment process at a good pace. There is absolutely no reason there should be a 4-week gap between first and second interviews. I've seen plenty of companies that have gone from first interview to offer in the space of a single week - that includes flying the candidate in.

The worst part is that I emailed the HR contact reminding them that this deadline existed, and to this date (a week and change now...) I have not yet even received an acknowledgment on their part.

Oh well, I'd been warned against that company to begin with.


And speak of the devil - they got back to me and were gracious enough to tell me that they were unable to meet our deadline, despite their interest.

Oh well, I guess I'm going with the other offer :)


Possibly make their point of contact an engineer rather than an HR person.

There are definitely benefits to this, as you mention, but taken to the extreme (all recruiting is done by engineers), it's a pretty high cost to the company's productivity.

Think about it from the other perspective: would you, as an engineer, want to work at a company where a significant portion of your job is recruiting? If you were the CEO, would you rather your engineers focus on recruiting or on engineering?


Get out and meet them (and their friends) in person. Nothing beats networking. I personally only work through my network when I'm searching for a job.

The other key is to move fast. If you want one of these people, don't waste their time with phone interviews and things like that, just get them scheduled to come in as soon as possible.

At my last two companies we would bring people in for an afternoon of interviews and have an offer ready for them at the end of the day if things worked out. That's the kind of process you need to have to snag people like this.

As a simple case study, the last time I decided to get a job I had 3 offers within two weeks. All through my network.

Currently, I left my last startup in the middle of last week. I haven't started actively looking for something else to do yet, and I've already had one offer through my network.


If you want one of these people, don't waste their time with phone interviews and things like that, just get them scheduled to come in as soon as possible.

I wouldn't worry about skipping the phone screen. But if your phone screener comes away saying "wow, this guy is amazing", bring them in for face-to-face meetings as soon as you can.

It's far more important to make sure that when you bring someone on-site, you make good use of that time. I'll forgive an hour spent on a phone screen far more easily than a day wasted because I flew down to San Francisco for a day of interviews with the wrong people.


Followup question: How do I know I have "one of these people" such that I can not waste their time with phone interviews, etc? Letting in a lot of chaff in hopes of not turning away wheat is not scalable, and if I already knew who the good ones were without phone screening them, I could probably cut down on the interviewing as well.

I'll grant you that true networked hires may have earned a skip-the-phone stage, though I'd still rather answer THEIR questions on the phone than find a no-fit after 3 hours in-office.

Be able to move fast is always good advice though!


Personally I like phone interviews. I don't like to in-person until we are serious and chance of hire is relatively high.

I've been fortunate thus far and always looked for a new job when I want to try something new, not when I'm out of work and hungry. Taking time off of work to interview for a bunch of low-chance jobs is not something I'll do unless I'm extremely excited about the company.

Maybe this isn't a bad thing (you want excited people), but how many employers work at companies people wake up knowing they have to work there.


That's an interesting question that I don't really know the answer to, short of falling back on the generic "trust your network" sort of answer.

Also, I'm not suggesting that you cut out the phone interview all-together, just keep it short and be ready to schedule an in-person interview them as soon as possible, preferably while you have them on the line.

When I'm looking at a company, I'm trying to determine if they're a good fit for me just as much as they're trying to determine if I'm a good fit for them. A big part of this is showing me that you have the ability as a company to recognize talent and execute accordingly.


Start with simple and fast screens, then progress to more fine-grained tests.

A simple programming question will filter out a huge chunk of the candidates (i.e., those not smart enough to code or to cheat), then email screen, phone screen, and then an in-person interview.

You should also figure out _exactly_ what qualities are most important in a candidate, and which ones you're willing to overlook.

Generally, I test for: (1) can they think? (2) can they code? and (3) can they learn?

You'd be amazed how much chaff you have to sift through to get even that much grain.


We'd love to talk to companies that use coding tests in the hiring process. Do they work? How well? Any insight into the design of good filters screens?


10 years ago and for a different company (in the computer game industry), we used a two question test (in C): 1. Write hex2int (without using any stdlib functions, such as strtoul(s,null, 16) for example. :) ) 2. Delete a node from a singly-linked list.

Personally, I found a VERY strong correlation between what we wanted in a game developer and their answer to #1. #2 I didn't find all that valuable, other than to weed out people who'd never taken any algorithm/data structure coursework.

For that company, and those roles, it worked very well, because there's a correlation between bit twiddling, pointer operations, and knowing whether someone "gets" pointers and their job performance. That's not the case in most jobs, nor in most modern languages. (Who cares if you "get" pointers if your language doesn't have them?)

My current company asks on from a set of some fairly basic questions on the phone screen, and we pretty much grade the whole phone screen "pass/fail" (interview/thank you for your time). I can't say they work quite as well, but we're also looking significantly "up market" from what the game company needed.

My idealized criteria: For professional hires: keep it short, but not so basic as to be insulting. For college hires: keep it short, and probably basic. For all in-person/whiteboard exercises: ignore error checking, exceptional conditions, etc. It's just too much effort to go through in that format.

Best coding test I ever took was for Accolade, who sent a zip file of source code for a very simple game (fly an airplane across a 2D map with mountains) and asked you to write "AI" (in the game sense, not the compsci sense) for the player. You had an evening and mailed them back a zip file with your code included. That was fun to do, and I suspect gave them fairly fine-grained insight into how good a coder you were, as there's "working", "optimal" and "elegant" dimensions into which various solutions bucket themselves.


Thoughtworks uses a (very simple) coding problem as the first step of the interview process. When I interviewed there, I found the problem too simple and was doubtful as to its value till I saw how it worked from the inside (after joining Thoughtworks).

Vast hordes of candidates with err "augmented" resumes get filtered out, as do "experienced" programmers (sometimes calling themselves "architects" and such) who haven't coded in (literally) years.

I would have thought more people would look up the solution online , but apparently even that effort is too much.

So, overall I would say a coding problem is an excellent idea. I am not sure how valid is the "tell me your program letter by letter over the phone" approach yahoo, google etc seem to take in their phone screens.


We use some simple coding problems during interviews. Subjectively they seem to work, but I have no objective way to quantify how well they work.

My favorite question to ask involves walking through a tree structure and summing up a particular property of all the leaf nodes. It can be done recursively or (preferably) iteratively. About half the candidates can't really do it. I often see answers that only process two levels of the tree, or aren't thread safe, or include lots of duplicate code, or simply don't work at all.

Joel Spolsky has some good suggestions on the subject. http://www.joelonsoftware.com/articles/GuerrillaInterviewing...


Yes, they work wonderfully. Start with simple, quick-to-solve and quick-to-check problems, since the vast majority of applicants can't actually code.


from all of the tech companies that we've talked to, hiring preference curves seem pretty consistent:

> immediate personal + professional networks > existing customers/users > extended network > recruiters & job boards

From our perspective, that means we can create value by helping people leverage their networks (http://startuply.com/Apps/Overview.aspx), gain access to existing high-quality networks (http://jobsyndicate.com, coming soon), and by making job sites that are focused on the communities and companies themselves (e.g. http://www.startuply.com


I'm not presuming I am one of the candidates you are looking for, but as someone who has been able to afford a bit of choosiness here are some of my thoughts.

It isn't about engineers vs. non-engineers. It's about helpful, courteous, and respectful, vs uninformed, detached, and unconcerned. A lot of HR people don't seem very invested in the position whereas the direct manager might be, so maybe that's where the stereotype comes from, but I've had many, many, many contacts from engineers (usually at smaller companies) who weren't so hot on the people skills.

On one occasion I worked with HR people. They were sharp and had their stuff together. In meeting them before interviewing with the engineering team, they were well dressed and very professional. They were courteous.

At all points I was aware what expectations I should have for notification, what the timelines were, and what the next steps were. In salary negotiations they were very respectful and it didn't feel like they were trying to find my lowest spot (though presumably they were).

This was extremely impressive to me. I've worked in plenty of situations where the engineers are good but the organization is poorly led or otherwise dysfunctional. I can talk to the engineers and tell if they know their stuff. That'll come in due time. It's harder to tell, does payroll go out in time? Is this an environment that will treat me like an adult?

When I ask for time off, am I going to have to e-mail ten different people for all the projects I'm in (I'm someone that can be useful in multiple areas), or will there be some structure there?

These things are harder to tell. Some people might like to be more seat of your pants. I personally expect competence at all levels of an organization, and not knowing these fundamentals is a red flag, and demonstrating them, conversely, is a good sign.


Always e-mail a candidate first to set up a phone call.

Don't cold call at 8.15AM because it's business hours somewhere. Every. Single. Day. Didn't need an alarm clock that week.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: