I've read so many posts about interviews. Whether you are trying to learn what questions to ask or how to answer the hard questions, the practice seems to be converging towards a standard song and dance, as opposed to a true assessment of how an individual will meld with your company's culture and what type of value they will bring to your company when they get there.
First, screen candidates for actual business needs. Every interview should have some standard for general competence, because we've all seen resumes that take liberties. However, if you are hiring a developer / engineer, give them a real world problem and ask them how they'd solve it. Better yet, tell them about problems you've actually encountered. Then, ask them how they would go about solving the scenario. Then, have them start coding it. Throw them some curves on the fly and see how they deal with it. There is more value in seeing someone psuedo-code a solution (free from a scrutinizing eye saying "that'll cause a runtime error") to How would you programmatically parse a sentence and decide whether to answer "that's what she said"? than there is in knowing the difference between obscure algorithms (for 95% of your engineering team).
Next, interviewers are sales people. There job is identifying hot leads and figuring out how to close. It is a skill, so don't send them out unprepared. Every interview I've been on, as a candidate, ends with me asking:
"What is your company / group's short-term goals?
"How do they measure progress towards achieving those goals?"
"What does your company value and how do they live those values?"
"Someone from your company said your company is looking to move in direction X. What tangible steps have been taken to support that directive?"
From a startup perspective, those questions are critical to recruiting people and keeping them happy when they join your team. As an interviewer for a larger company, you should make it a point to mention these things; they aren't just important for startups trying to recruit. I learned to ask those types of questions because the information never comes up unprompted. Surprisingly (or not), most of the time, the people conducting interviews can't answer those types of questions anyway. Not bringing those types of things up, and certainly not being able to answer those types of questions, is a sure sign that your house isn't in order. And your house has to be in order to attract the right type of candidate.
That leads me to my final point. HR representatives should know the open roles they are responsible for, the teams looking to fill those roles and the projects they are currently working on, cold. However, they should also know what other open reqs are out there AND have a standard for finding roles for 'the right people'. All too often, candidates interview for a position and would be a better fit somewhere else. It's a miscarriage of HR's responsibilities not to be able to spot this when it happens. Since most larger companies have an arduous process for requisitioning new personnel, I'll stop short of saying that a great company always has a place for talented employees. But, they really should. At a small startup, the people trying to build a company based on a vision are conducting the interviews. They would never let 'A' talent out the door because the role wasn't a fit. At a larger company, recruiters should pretend that the CEO, COO or SVP of something or other, is behind a two-way mirror. Believe me, 'A' talent in a new role is better than experienced / I fit the job description perfectly 'B' talent every day of the week. And let's face it, you have to hire 'A' talent when you find it.