Holy hell, just reading that made me feel sympathetic anxiousness. Don't do the things she's suggesting, it's a short walk to a lifetime of stress, anxiety and being underappreciated for your work.
The problem is that the OP is fundamentally approaching the interview process as a role in which she must please the interviewer in order to be granted the prize of a job. All of her advice is to prepare better and be more on your game so that the other person might perhaps like you more. Coming in with this mindset automatically puts you on a back footing and makes everything more difficult.
Instead, focus on flipping the status game around. When you're with the interviewer, you're with a peer. Talk to them as if you're talking to a friend, not as if you're in a high pressure, life or death situation. Take the VC interview, for example. Imagine if you're catching up with your best friend from college and they ask you if you've made any friends in NYC yet. Do you freeze up and start blabbering incoherently? No, you laugh about it and bitch about how tough it is and ask them if they have any advice or whatever it is that you would do. Approaching it this way changes the entire tenor of the interview process.
This is where unskilled and unaware of it genuinely comes in handy. People who are just bad enough that they have no idea how they compare easily sail through interviews since they assume they're above average while genuinely talented people spend so much time comparing themselves to others they get wracked by insecurity.
I know this is something easier said than done and that some people in particular find it especially challenging. So is learning Javascript or Photoshop, yet we don't complain when a job requires us to know them to be hired. Learning social skills is as equally important to your career as technical skills so just nut up and do it.
It's well and good to say this, and this is always my tactic anyways (although it's also how I naturally interact in any meeting).
However, that only gets you so far. I have a dirty little secret, I'm really bad at a lot of the types of whiteboard questions which get asked and while i have a good natural intuition on things like big O that intuition doesn't translate well into actual words.
So instead I end up in a situation where for instance I'm told by my boss that I could easily/quickly get a job most anywhere I wanted and yet fearful that I'd get turned away from Bob's CRUDapp shop. It is what it is and I realize these are the entry bars that our industry uses & I don't complain about it, but there's more to the equation than simply owning the room.
All you can do is go on interviews and see what works. And I think people should do this, even if they like their jobs. It's way too easy to buy into some rationale why you shouldn't - it's awkward, it's a waste of time, they might not like me, etc. You do it so that when you find the place you do want to work at, it's a no-brainer.
Agreed entirely. I used to try to always guess what people were looking for. At some point I realized that it's better to just be yourself, you want them to like you for who you are and also no matter what you do someone is going to disagree with it.
Interesting. I wouldn't think you would need a "natural intuition" for big O. You just need to know what it is and how to determine it. It would be like having a "natural intuition" for long division.
Big O is, in some senses, about giving a natural intuition for reasoning with equations. As Knuth says, "it significantly simplifies calculations because it allows us to be sloppy."[1]
So, having a natural intuition for it could be a way of saying that one has a natural intuition for equations, in general.
"one has a natural intuition for equations, in general"
Well, that's also true and I also have the same problem.
What I'm really trying to capture is that there are a lot of things which I "get" in some fuzzy way but I have difficulty verbalizing it, even in my head. When I do manage to verbalize things, it often comes out sounding very non-academic. But what happens is that coworkers end up thinking I really know these things well, as long as I don't open my mouth much (and when I do, they think I'm just having a brain fart)
I also had a natural intuition for mechanics in physics, I could never show my work but I always got the answer. The instructors always thought I was cheating.
What I mean here is that I can tell you if something is going to be inherently fast or slow but when I'm put on the spot and asked for the O I freeze up. I can usually even describe in more colloquial english what the O is because I "know" it without knowing that something is NlogN or what have you.
I admit it sounds fishy, but I work in areas where this stuff actually does matter and yet a) it's never a limitation of mine and b) I almost always flub those questions shrug. As I said, it is what it is - I don't expect people to interview me differently.
That sounds really strange, because in common use you're going to experience 1, logn, n, nlogn, and n^2. That's an extremely small number of categories. How can you have a natural intuition for it and be able to describe it in colloquial english without the ability to pick out of five options?
Sometimes. I have trouble verbalizing a lot of mathematical concepts even though in an abstract sense people wouldn't realize that I couldn't explain why I was acting on things.
Sometimes I can and yes, often then it's a difficulty pulling the correct terminology - now that I'm thinking about it perhaps it's because I'm already struggling to verbalize it anyways. Often if someone starts to lead me it all falls into place which I think somewhat goes along with what I just said here. Kind of like when you're struggling for someone's name, if someone starts to say it usually you remember it before they've even finished the first syllable.
Hi! Author here. Point well taken. Trying to post quickly before class...
I hope I didn't imply that you should walk into the interview feeling like you were on the defensive - I don't think that's the case at all. I just think being well prepared (a) makes you feel prepared and (b) makes you more likely to be able to handle something on the fly.
I'm also not sure what roles you've been interviewing for. I've found these sorts of things to be more important for PM/Product than for Engineering or Design. The other roles have some more concrete goals to judge off of. It's hard to tell if someone is 'good' at Product, and I've found things go better for me if I keep all of this in mind.
The particular example that stood out for me was the story of the elevator design problem. At some point, she lost interest. Fine, she lost interest. I think it’s fine to say so. “Sorry, I really can’t think of anything more productive or interesting to do with this problem.”
That happens in real life. You reach diminishing returns thinking about something. In real life, maybe you have a reasonable starting point and can get going with work on one of your designs. Maybe you rope a colleague in for fresh insights. Maybe you think about another problem and come back to this one when you’re fresh.
Or maybe you decide that the problem isn’t interesting to you and you don’t want to spend the only currency you truly have--your time--on it.
Hand-waving the entire question of whether puzzle problems are an effective interviewing technique, one of the things they select for is people who find that particular problem interesting. I recall being asked about balancing rocks in an interview. I honestly found it interesting. But I know good people who don’t. Should the question never be asked? I dunno. But I would personally NEVER fault someone for taking an honest crack at it and then saying, “That’s it, I’m out of ideas for balancing rocks.”
If I were interviewing and someone asked me about something that didn’t interest me, I’d take my best crack at it. If I ran out of juice, I’d say so. If they wanted to fail me for that, why should I argue? That’s one of the things they’re testing for.
Why should I lie to them about my level of interest and personality just to get a job offer?
This leads me to another faux pas. I have particular tactics for “Do you have any questions for us?” But I have been in interviews where I have lost interest in the process and don’t have any questions. That’s fine. Not all interviews involve me being curious at the end.
Why lie to them about being interested, if I’m not?
> Why should I lie to them about my level of interest and personality just to get a job offer?
I think that's the crux of these two different viewpoints, and I think it is merely different tactics falling out of different strategies. On the one hand, if your strategy is to find work that you're interested in and are a great personal fit for, then it absolutely makes sense to prioritize being yourself above getting the job. If, on the other hand, your strategy is to get this job, either because you're very ambitious and this is a high-paying, high-status, or career-expanding position, or (more likely for most people in the real world) you really really need a job to pay your bills, then it might make sense to "please the interviewer in order to be granted the prize of a job".
tl;dr; The answer to your question that I quoted is, Because you prioritize getting this job over getting the "right" job.
The more interesting question is whether the tactic of being nonchalant still works better, even if you're desperate to get the job. I think it probably does, but the great Catch-22 of the job market is that it is so much easier to get jobs when you don't need them.
I wanted to take some time before answering this, to make sure that my feelings did not change, and they haven’t.
I do not consider a question of pretending to be someone I’m not a question of “strategy.” I do not need to convince myself that it leads to some better outcome for me to be authentic with people.
It’s one of my values, and values are things you explicitly recognize are sometimes sub-optimal for the things you wish to pursue.
I think you read my comment in a much more personal way than was intended, but I can see why, and I'm sorry for that.
I didn't at all mean to suggest that you (personally) are playing out a "strategy" that you have devised to get ahead, and I absolutely got the impression from your original comment that it is a matter of values for you, which I think is great.
My point was mostly that for many people interviewing for jobs, that authenticity is a luxury that is difficult for them to achieve.
I think I understand what you are trying to say, but when you describe values as “luxuries,” I think we’re standing on opposite sides of a chasm shouting at each other.
There is definitely something important and often overlooked in what you're saying. "Framing," for lack of a better word, is the secret sauce in many interviews. Especially when you reach the point in your career where you're interviewing for mid- to senior-level roles. Nine tenths of the job, at least in the interview, is to "look the part," or to "command the room," by way of framing yourself as a confident, whip-smart, personable, executive presence. In fact, a very strong interview strategy often involves turning the interview around and subverting its premise a little bit -- launching right into enthusiastic questions about the product, or the roadmap, or the team, which demonstrate your strong knowledge about the product and the landscape in which it operates. Doing this, assuming you do it skillfully, can actually short-circuit some of the conventional screening script, and bump you over into the "What will it take to get you on board?" script.
But here's the thing: you still have to know what you're talking about. Ellen's points about intense preparation are extremely important. As a mildly anxious and "Type A" personality, I can relate very profoundly to Ellen's point about deriving confidence from inside-and-out knowledge about the product.
Confidence and poise come naturally to some people, whom I'd describe as socially gifted in much the same way that we'd describe high-IQ people as intellectually gifted. And some rare unicorns have both skills in abundance. But for the rest of us, deriving confidence from some tangible locus -- preparation, knowledge, etc. -- is just as valid. The trick is not letting your preparation slot you into a subordinate, obsequious frame of mind, but instead, letting it fuel your "I'm awesome, and I love this" frame of mind.
This is really the best advice for interviewing. Personally, interviews used to be me trying to impress interviewers with my skills, my talents, uniqueness yadda yadda which would always end up with the interviewer closing up, because of course I was doing all the talking trying to prove what a gem I was.
Then I started a different approach. If you think about it, nobody is doing anyone a favor here. We are all professionals, trying to solve real problems. So now, my attitude is more "How may I help you? Would I enjoy working at the company? Would they enjoy working with me? Are my skills suited for the job?" rather than "Please hire me!". I feel like an honest approach like this one saves a lot of time; you know immediately whether things have a good chance of working out, if you do get hired.
>> approaching the interview process as a role in which she must please the interviewer in order to be granted the prize of a job.
This is the natural approach to the process when you feel that you need the job, which is the state most people are in when they're interviewing.
As far as I can tell, the only thing you can do is interview for open positions frequently, especially when you are already employed and like your job. This nets you practice and exposes you to opportunities without the desperation. There are drawbacks to this strategy too, though - each interview you do at a company that does not result in a hire can make you less likely to be asked back for another one for a different position there unless they are desperate for you, and the real value gained from spending time and effort practicing at interviewing is debatable.
I'm doing some interviewing right now, and what I'm trying to do is help perspective employers decide if they would actually like working with me. I could easily prep the interview and say all the right things, but then comes the part where we actually have to work together. Getting a job is 1/1,000th of the time working at a job. I would recommend being more concerned about the 999/1000th part while interviewing. That is unless of course you have personal reasons, like finding an employer to put on your resume or impending personal financial obligations.
Otherwise, have faith in yourself that someone out there appreciates the unique bits you bring and realize that figuring out how to ace an interview can sometimes cause you to never get that 5th interview which is where you really belong.
A few years ago I started asking the interviewer this question:
"I'm always looking to learn new things. Given what you've seen of my resume', what new things could I learn here?"
I sincerely wanted/want to know this but I discovered that there was an unintended side benefit: In response to this question, the interviewer often tries to "sell" you on the company which changes the dynamic. Instead of you trying to please the interviewer, the interviewer is now trying to please you instead - or at least it seemed that way to me.
I also like the question "Now that you've interviewed me and seen my abilities, how do you feel my working here will impact the team/company? What will I help out the most with?"
I found it to be an effective question at turning it around, but it also makes them think about just what I could accomplish for them. It gives me a good gage of how well I did before I even leave the interview.
I feel that question is far too upfront for an interview, definitely an initial interview anyways. You're not asking where they think you could fit, you've phrased it as where do I fit?. It's an interview, not a job offer.
This wouldn't happen in a phone screen. This is for the on-site interview after I've already gotten a positive feel for it.
Maybe I didn't word it perfectly, but it is partially out of a desire to know how they think I would benefit the company. Am I just another redundant cog in the machine, or am I really going to play a key role? I guess it is a good point to still make it in hypothetical language.
The problem with this question is that you are probably talking to a HR flunky at this point. It's a good question if you are interviewing with a particular department, but not something your average recruiter is going to have a clue about.
Oh I totally agree. I really dislike interviewing with anyone that I'm not going to be working with. It seems like that is a one way interview in that case. Why ask questions if the people who are answering them have no clue what the answers really are?
I always want to reply, "Are you asking because you legitimately want to enhance my understanding of this company and role, or is this a filter for how clever a question I can come up with?" ... because I usually can't tell, and it would affect my answer.
If I get asked for questions at the end and I genuinely can't think of anything I'll be honest about it and say something like:
"I think we've have covered everything I was curious about. I have your bussiness card though, so would you mind if I get in touch with you if I think of anything further?"
Which I suppose is a question in itself :)
I tend to ask a lot of questions throughout the interview so I'm not really the kind of person who waits until the end to seek clarification about something.
2. No ability to write standard template library-based C++ code from memory, except maybe cout and cin.
3. Being late. (3 times at least)
4. Being in a different country and forgetting about it.
5. Trying to sell myself because that is what I was told to do and coming across as unforgiveably arrogant. (a difficult balance)
6. When asked about if I minded the data-cleaning work, which could be boring, I joked that if I was worried about being bored I would have chosen a different career. Maybe this isn't even a joke. Either way, highly offended interviewer.
7. Couldn't really speak the language.
8. When interviewing for a position as a bartender, said I could pour beer. Then proceeded to spray the customers with my attempt when I was asked to prove it. (I was young) However, the bar owner then let me work for free as a trainee for the night, and I got the next job.
The author seems to beat herself up a lot over failings that I don’t think were her fault. Sure, the "do you have any questions?" foul-up is a huge own-goal, but some of the others?
Eg, "I wanted to talk about Gmail (I used it daily) but the interviewer didn’t want to. Instead, we opted to talk about Google Docs. Unfortunately, the interviewer had been the Google Docs PM, and I’d only used it at a surface level. Every suggestion I made turned out to already be in the Product. Whoops."
To me, this has the smell of the "know it all" interviewer who is more interested in proving their superiority over the candidate than actually conducting a decent interview. Of course the interviewer wanted to stick to discussing the product they were the PM on, how else would they be able to smugly call out the interviewee on their (perfectly reasonable) suggestions?
I recently completed five (yes, five) interviews with Stack Exchange and had to give the "no" answer to "do you have any questions?" on the fifth interview. After five interviews, I pretty much had all my questions answered. Seemed like a valid answer to me in that context.
I was declined at interview #5, after passing the previous four. Not sure how much that question played a role. It was also the weakest of my technical interviews. I was surprised to get hit with more programming questions after having passed so many other technical interviews with them.
After 5 interviews which dragged out for almost two months that was super disappointing though. It was probably the last interview I needed to pass. It's like being knocked out of the race with a blue shell in the last 20 seconds in Mario Kart.
Wow, I just went through the exact same thing (except it took 5 months!). I had 5 interviews (1 non-technical) which went really well, then a sixth, and final, technical interview with the VP of Engineering in which he threw at me a math puzzle that I had never seen before. Of course it's in pseudocode in a Google Doc, so it's basically sink or swim.
I did OK, but only OK on it. His comment when we ran short of time was "Yeah, I think with a little debugging, that solution would probably work" but then he passed.
Perhaps it's just my bruised ego, but I think he made a bad decision. Here he is with 5 members of his own team saying that I'd be a great fit, but he basically selects for people who have encountered a puzzle with very little relation to the actual work involved in the role. He may as well have evaluated me as a developer on my ability to prepare a chocolate souffle in 30 minutes. It would have been roughly as representative of my skill set.
Every detail you just described exactly mirrors my experience. The VP of engineering, the math puzzle I hadn't seen before, trying to solve it in a Google doc rather than with code I could compile. All of it.
I did end up solving it, but I wasn't happy with the solution and neither was he, with good reason of course, but it was one of those problems I easily could have solved if given the proper time to work on it rather than digitally whiteboarding it for 20 minutes in a high pressure situation. A quick and dirty solution is all you should expect from working on a never before seen problem in 20 minutes on paper without a compiler.
I came away feeling as though their process was more broken than my performance. Doubtless, I could have done better. But it just felt so strange to be washed out after four other engineers thought I was qualified.
The high pressure situation makes things hard. In a recent interview, I turned
P(A and B and C) = P(A) + P(B|A) + P(C|AB)
rather than the product of the probabilities just because I was stressed, then got a nonsensical answer. Fortunately the interviewer just asked me to reconsider that line, but it was not a mistake I would normally make.
An aside, but do they really normally run a 2-month interview process, or was it some kind of scheduling issue? Seems like a lot of candidates wouldn't even stick around for the end of that, since they'll have gotten an offer from somewhere else before then.
Probably a combination of scheduling issue + normal process. I got the impression they subject candidates to much more vetting than normal, but it was also not uncommon for a week or more to go by between interviews.
Interesting responses here. Maybe I could suggest to do a little more research on the company's standing (I really don't know myself). A lot of times when companies are seeking to sell, they start interviewing folks to create a perception to potential investors the company itself is doing well. In reality perhaps they can't afford to hire and are simply trying to sell the company off. There could be any number of reasons outside of the interview itself that you are unaware of. E.g - Another candidate (which doesn't sound like the case here). Don't beat yourself up to much over it. It sucks that due to stupid legalities, we can't get the full details for why we were rejected. Perhaps the issue we really need to fix here is creating a better more transparent interview process.
Also to the person whose interview took 5 months. Is this really a company you would want to work for? Sounds like they don't have their shit together.
"To me, this has the smell of the "know it all" interviewer who is more interested in proving their superiority over the candidate than actually conducting a decent interview"
100% spot on
Actually finding out that the suggested features were already in the product might serve as validation of the suggestion, but of course, the interviewer takes it only as "you don't know Google Docs enough so, rejected!"
My question is: did the candidate know they were talking to the PM of Google Docs ahead of time? Springing that knowledge on the candidate during the interview is a bullshit move.
More importantly, did they know they were interviewing specifically for Google Docs and not just Google in general? There's no way to learn the ins and outs of every single thing Google does, especially since so many of the projects end up going nowhere.
Nobody wants to say: I spent 3 months but became the foremost Google Wave expert in the world.
From my personal experience, you don’t get interviewed for or by a specific group for "ordinary" Google positions. As I understand things from the outside (perhaps a Googler can confirm?) a candidate goes through the interview process & if they make it through then they go into an internal pool of potential candidates who are then allocated where they’re most needed. I interviewed for an SRE position, so I could have ended up attached to a whole range of Google projects.
I would imagine the intention is to prevent teams picking people who are "just like them" (or any of the other ways in which project groups can go a bit pathological inside a large company). By carving out the interview process as it’s own separate thing in this way you can prevent individual parts of the company going off the rails.
I was going to make precisely the same comment. The interviewer who gauges their questions on their knowledge and expertise rather than yours isn't doing their job of finding out what you know, or alternatively, how you learn. They're showboating.
I have found myself wishing a lot over the last year or so that interviewing was less of an art and more of a science.
The writer talks about being quizzed on a google product she had only superficially used. She recommends that people do their homework more, but honestly, even a dedicated googlophile would struggle to have tried every google product in depth. She was unlucky that they asked about that specific product.
Honestly, there is a lot more luck in the interview process than makes me comfortable. The difference between getting the job vs losing it can be that the interviewer chose to ask you about smart pointers rather than heap allocation, and that's galling when the reality of the job is that you're going to spend half your time moving text boxes by two pixels and changing log formats to suit the new Unified Log Structure your sysadmins have dreamed up.
> interviewing was less of an art and more of a science
I'd extend your wish to "Whole recruitment process should be less of an art and more of a science".
The problem is that even the properly conducted interview using established, good practices (like competence based/behavioral interview) can give you max. 50% accuracy in assessing the competencies. What means that additional methods are absolutely necessary.
But even the most accurate methods will lead to wrong decisions when companies don't have precisely and adequately defined what competencies are actually required to perform well in a given position.
And from my experience this is the core problem. People debate over questions/fizz-buzz/puzzles/whiteboard/whatever but usually do not invest enough time to determine what would they like to measure with these methods.
The point of fizz-buzz and similar exercises is not to find suitable candidates. It's to eliminate plainly unsuitable candidates, very early in the process, at minimal cost.
I've given a lot of interviews (>100) and while I totally accept it's a best guest and imperfect, I find that you get more out of fizzbuzz and the like than meets the eye.
Firstly, I certainly agree unnecessary algo questions for a job that doesn't involve algorithmic problem solving on a day-to-day is silly and leads to false negatives.
But the simpler problems give you more than just the basic 'can you code' test - it gives you an insight their into thought process.
For example, seeing how somebody progresses from:-
for(var i = 1; i <= 100; i++) {
if (i % 3 == 0)
console.log('fizz');
else if (i % 5 == 0)
console.log('buzz');
// ah hm both % 3 and %5...
}
To:-
for(var i = 1; i <= 100; i++) {
if (i % 3 == 0 && i % 5 == 0)
console.log('fizzbuzz');
else if (i % 3 == 0)
console.log('fizz');
else if (i % 5 == 0)
console.log('buzz');
...
}
And dealing with the fact they have a mistake that needs fixing is always interesting to observe, and gives you insight into how they approach problems.
It seems so incredibly trivial and irrelevant at first hand but shows you a lot (assuming they've not seen it before.) I've been really surprised by this.
I suspect the idea of there being a science of this is a bit of a mistake - there's plenty of stuff that involves so many factors that it's really hard to know the really ideal approach. A quick look at the actual state of software engineering studies (30 undergrad students != all programmers) or e.g. macroeconomics should give you pause.
Certainly loads of scope for improvement though, I agree wholeheartedly!
I concur. When hiring with these kinds of small problems, you actually see a lot. First, in my case, it sorts programmers from not-programmers (it's in the 50% ballpark). Then with a problem a bit harder, it helps sort "programmer-in-the-guts" from "programmer-for-a-job". At the end, I've removed 90% of the candidates and I'm left with average to very good programmers.
Moreover, leaving people to do these little tests in the team and proposing them to ask questions whenever they want, plus asking them to explain their solutions helps a lot in seeing the social skill I need (communication, openness...)
Of course, it's not 100% safe, but I'd say it's a good heuristic :-)
It's interesting to hear that other people have had similar experiences :) I was also surprised as to what degree you can get an insight into social skills just from interacting with people during the interview.
"But even the most accurate methods will lead to wrong decisions when companies don't have precisely and adequately defined what competencies are actually required to perform well in a given position.
And from my experience this is the core problem. People debate over questions/fizz-buzz/puzzles/whiteboard/whatever but usually do not invest enough time to determine what would they like to measure with these methods.
"
Yes, I agree
Nobody should write FizzBuzz on the board exactly because if you get a person that can't do that your initial filter/selection is wrong. Dead wrong.
Let's say that my initial filter/selection is less than 100% bullet proof. Now what? Do I pretend that it's perfect? Or do I try to find a very inexpensive way to put a safety net behind my initial filter?
Until messy human beings are replaced with perfectly rational robots, the recruitment process is always going to be an 'art'.
Roles are often vaguely defined, because it depends on who is available. People lie, exaggerate and game the system in interviews. Neither side wants to reveal their weak points. Figuring out the underlying truth and matching the best available candidate to the best possible job description is not something algorithms are good at.
You are right. However, there's a whole spectrum between messy and irrational human being and perfect robot. My point was that people should take an effort to reduce/control their imperfection, biases etc.. The choice of "I'll be messy because I can't be as good as robot" is easy but flawed.
By "established" I meant: defined and researched (the 50% accuracy I mentioned above comes from the literature). But they aren't "established" as popular/widely used. Partly because they require well defined competencies, but also because they aren't easy to conduct in comparison to typical interview (which has the accuracy around 20% AFAIR).
competency based interviews are standard for junior positions with large companies in the UK. however, this approach often turns interviews into a bullshitting competition.
> this approach often turns interviews into a bullshitting competition.
That is also my experience. As a result I generally avoid applying to big companies where I expect a lot of non-technical interviews. If that's how everyone is hired, I don't want to end up in a MENSA club instead of a place where people have strong technical abilities.
A friend in I were just remarking last night how ridiculously stochastic the hiring process really is. I'm convinced that if we had perfect insight to all tech hiring in the universe that the comparison of hire/nohire and wouldbegood/wouldbebad is so close to being about 50% all around that this is all for naught.
This is the first comment from tptacek that I disagree with; strongly. I know this HN audience loves its scientific approach to everything and everyone in life, but I actually don't. I'll probably never accept applying science to dealing with people simply because algorithms would never have enough inputs to describe a person accurately. I much prefer the "organic" discussion with people to get an idea of how they think and feel. If a company gave me a job offer without me getting a good idea of the thoughts & feelings of my coworkers, or me having doubts that they know mine, I probably wouldn't take the job. At my current gig I'm usually one of the culture-fit interviewers.
FWIW, in my most recent performance-review I was described as having high "EQ".
In general, I just don't like trying to describe people with science. That's a personal philosophy that I don't think I can really convince anyone else of if they don't already believe it. But specifically:
>> Do not allow team members to contribute feedback based on "culture fit".
I'm aware of how culture fit can lead to unfair discrimination, but throwing it out entirely I think is like "throwing the baby out with the bath water." I think culture-fit is important to have the right "vibe" in the office. Unfortunately, I know that "vibe preservation" can lead to aforementioned discrimination very easily but I also believe the "vibe" does exist and damaging it results in problems.
>> Try to eliminate phone interviews entirely. They don't add value, but do amplify noise.
If phone-interviews were 100% gone, then we'd need 2 in-person interviews. The first interview asking pretty much the same questions that could have been done over the phone. I think phone-interviews help screen out obvious bad-fits early on without investing too much time.
>> Never interview a candidate with more than one interviewer
From my own experience I've seen 2 interviewers describe a candidate almost completely opposite from each other and I found it incredibly fascinating to see how different 2 people witness the exact same event at the same time. Everyone being aware of those differences and the rest of the team knowing how the interviewers think day-to-day, I think gives balance.
>> Have lunch with candidates if you like, but don't make lunch a Q&A with the candidate.
What would you talk about at lunch if not Q&A? Or are we assuming that you specifically mean prohibit question to the candidate but expecting questions _from_ the candidate.
>> Script your interviews.
While I do think it's important to have some kind of benchmark sequence of questions, I think more is learned about the candidate(and I learn more about my potential new coworkers) when it feels more like an organic conversation rather than those scripted conversations I endure when calling AT&T about my malfunctioning LAN line. Or maybe you don't mean scripted in that strict of a form.
Incidentally, do you have some kind of script notifying you when you're mentioned on HN? Sometimes it feels that way. You kinda "non-organically" appear when someone mentions you. :-P
Too hard for me to define. Like not hiring because the candidate didn't have "passion". I realize how frustrating & annoying it is to be disqualified based on such of an ambiguous intangible concept - it borderlines on nonsensical, but I strongly believe it exists.
Do you also believe that you can reliably assess it in a face to face interview with a candidate? How sure are you that you're not just assessing a candidate's ability to be confident and unflappable in a job interview? Have you ever had the experience of hiring someone who did amazingly well in their interview and turned out to be a total zero on your dev team? I'm very wary of subjective signals I get from interviews.
>>Do you also believe that you can reliably assess it in a face to face interview with a candidate?
Nope, I don't. I absolutely believe there is a significant margin of error there but I also believe that, as human beings, we have to accept that we cannot be standardized plug-n-play hardware rather than try and come up with an algorithm that we rely on to tell us if a person is a good candidate or not. FWIW, I'm also against standardized testing in schools. You just end up people who are groomed specifically for those tests and in general the word "standardized" is kinda opposite of "diversity".
>>How sure are you that you're not just assessing a candidate's ability to be confident and unflappable in a job interview?
For dev jobs, at least you have background checks on past employment and/or education, a few coding tests and discussions around them to at least know this person isn't a totally 100% Grade-A Fraud. But indeed it is possible to end up with someone who just guessed right & prepared before hand for your questions then totally falls on their face the first month on the job.
>>Have you ever had the experience of hiring someone who did amazingly well in their interview and turned out to be a total zero on your dev team? I'm very wary of subjective signals I get from interviews.
I've seen this happen in at&t, more than once, where standardized'ish interviews were easy to guess and some people just knew exactly what to say and nobody applied any fraud-detection. But I admit I've also seen this happen in heavy culture-fit oriented interviews that still manage to leave something out. e.g., maybe the candidate actually gets frustrated easily and becomes very difficult to work with. If they did well in the interview then you never got to see what happens when they don't do well.
Personally, I think this is just the chance we have to take as a society. If we really try hard to apply algos to humans I think we'll end up with a bunch of problems. I can see people grooming themselves specifically for those algos and I just don't think that's healthy for standardized interviews or standardized tests in schools.
But indeed, this is all touchy-feeling-fuzzy-intangible-indefensible stuff.
There's a movie called Gattaca: http://www.imdb.com/title/tt0119177/ That kinda talks about this and it turns out people get different impressions from this movie. Some people think what the main character did was unjustified fraud and some people think it's society that treated him unfairly because an algorithm said he was unfit for the role.
I should confess to goading you a little bit, since I'm working on a piece about this topic right now, and can use all the input and alternate perspective I can get. This is really helpful, thanks!
(I'm hoping to post it Friday, but since you've already called this one of the few arguments I have you don't agree with, I'd be really happy if you were willing to take a peek at it tomorrow).
> I'm aware of how culture fit can lead to unfair discrimination
Well, it certainly leads to discriminating against people who don't fit into the team culturally. But really, is that unfair? Isn't the goal of a software team to produce great software, not to be a force for fairness or justice or anything else?
If people with much in common work better together than do people with little in common (which I believe is likely to be true), and if the team works together, then isn't it better to hire people with much in common?
Yes, that is unfair! The whole reason we have the ADA and anti-discrimination laws is that plenty of people would rather just work with people that look and talk and think like them, and in fact believe they are more productive that way, and we as a society have decided that's NOT OK.
As you accurately perceive, there is wiggle room in the law. You can in fact discriminate against candidates based on their political leanings, their taste in music, and their hairstyle. Those things do not define protected classes under the law. But you should not do that, for the same underlying moral reason underpinning the fact that you can not do that because of someone's religion, gender, or race, no matter how ineffective or unproductive working with someone of a different race might make you.
>>Yes, that is unfair! The whole reason we have the ADA and anti-discrimination laws is that plenty of people would rather just work with people that look and talk and think like them, and in fact believe they are more productive that way, and we as a society have decided that's NOT OK.
I completely agree with this. But, as a black male, I don't want someone who's racist to be forced to work with me. Extreme out-of-the-park example; I don't want the KKK to be forced to hire me because of affirmative-action or something. That'd be awkward for all of us! I'd prefer to get at the root of the problem and change society's views such that nobody needs to be forced to hire me and they do it because they like me and think I'll be good at the job; and being black doesn't bother them. If someone doesn't hire me because I'm black, I suspect it's better for me than being hired anyway and having all kinds of odd social cues happening in the office because someone(s) is trying really hard to hide their racism but it slips out every now 'n again.
Maybe there's a catch-22 in my reasoning. To solve racism, people need to be exposed to more people different from themselves but I don't want to be exposed to racist people until they're not racist anymore.
> The whole reason we have the ADA and anti-discrimination laws is that plenty of people would rather just work with people that look and talk and think like them, and in fact believe they are more productive that way, and we as a society have decided that's NOT OK.
Yeah, but I have no trouble in advocating what I believe is right, whether or not society agrees☺
I tend to think that our current society places too much faith in diversity qua diversity, and cares insufficiently about similarity. I really do need to get around to reading Bowling Alone…
I'll say that getting rid of phone interviews is wrong, unless you are keeping "phone screens" which are just making sure that the person isn't wildly out-of-place for the job.
I've wasted time going to interviews when a phone interview would have revealed to both sides that it wasn't the right job for me.
I think in general, you should advocate a "get a cup of coffee" approach to the first technical contact point in the hiring pipeline. The focus should be on describing the process, describing the job, doing a sales job on the company etc.
You shouldn't really be looking to filter at all at this point, rather you should be presenting an opportunity for the candidate to self filter. The only thing I filter for at all in that case is if the person does not have enough communication skills to even continue with the process (ie they only speak a language that no one in the hiring pipeline speaks).
Now, it is sometimes impossible to scale up those coffee meetings either due to locality, scheduling, whatever so a phone conversation is the only choice. In those cases though, I think the mindset is the important thing. It isn't a phone screen. It's still just getting coffee, over the phone, with no coffee.
You might find the recent paper "Algorithm Aversion: People Erroneously Avoid Algorithms After Seeing Them Err"[1] interesting.
> [...] Dawes subsequently gathered a large body of evidence showing that human experts did not perform as well as simple linear models at clinical diagnosis, forecasting graduate students’ success, and other prediction tasks [...]
> [...] cited reasons for the cause of algorithm aversion include the desire for perfect forecasts, the inability of algorithms to learn, the presumed ability of human forecasters to improve through experience, the notion that algorithms are dehumanizing, the notion that algorithms cannot properly consider individual targets, concerns about the ethicality of relying on algorithms to make important decisions, and the presumed inability of algorithms to incorporate qualitative data [...]
Note: I removed inline citations in the second paragraph to make it briefer.
Of all the things I've ever tried in order to do well in interviews, one of them trumps all of the others:
I am interviewing them.
That's it. It's that simple. The sooner we understand that every interview is a 2 way interview and that we are interviewing them just as much as they are interviewing us, the sooner we can adopt the right mental attitude the make the rest of the bullshit details melt away.
I even take it a step further: it's much more important the I make the right choice than they do. I am giving them my time, which I can never get back. They are giving me their money, which they have plenty of and can always get more.
Interview them. Be nice. Have a nice 2 way dialogue. And never forget: it's your party, not theirs.
If it doesn't lead anywhere, no problem. There are plenty more of them, but only one of you.
Once you get past pencil pushing jobs and jobs that don't require more than a week of training, interviews need to stop becoming interviews and need to start being conversation. It needs to stop being, "will they give me a job!?" and transition to, "do we want to work together?"
I can't tell you how many times I've interviewed someone and they never asked me a single question. Even if they seemed good, I always put them into the reject pile. Not a single question? Wow.
Do you give them conversational priority during the interview, or do you dominate the entire interaction and then make their opportunity to finally speak freely just another one of your interview questions?
If so, what you're really asking is this: "Here's some rope. Would you like to hang yourself with it?"
I like to ask my questions as they become topically relevant, during the interview. If I can't ask anything until the end, that is a gigantic red flag for me.
If you expect my question to just be an answer to your "do you have any questions?" question, then screw you, buddy. You're getting my canned response: "How does your company determine the value of a <position title>?"
And then, no matter what you say, I'll make a little frown and say, "hmmm".
I encourage our candidates to ask questions and while I won't explicitly hold it against them (I find many people are too afraid of the power dynamic) if they don't it certainly helps them if they have a rich conversation instead of just blankly answering my own questions.
As an interviewee I try to ask any questions which come up throughout the process, I don't wait for them to ask me. This sometimes annoys interviewers, but that's their problem.
However, what I vehemently disagree with is that someone needs to have a clever answer to "do you have any questions for us?". This is usually thrown in the last few minutes of an interview and frankly it calls for a canned question which means by the 10th person I've talked to I'm tired of hearing the answer(s).
> I'm not looking for clever, I'm looking for interest.
Not saying this is true of course, but have you considered that some of those times might be that you as the interviewer were unable to pique their interest in what you do? It is a two way street, after all.
Right, but I'm showing interest by participating in the convo in general. What I mean are the cliche questions which are purely designed for me to show that I've reseaeched your company except that I already know the answer as I've researched your company.
That's true, but I meant that if a lot of your interviews seem to go poorly you should keep an open mind about things and consider your process as well as the candidates you're choosing to interview.
I feel like I'm making this comment over and over on HN, but this is a great approach only when the going is good. But one needs to be flexible and change their mental attitude appropriately when times are not so good. Sometimes you just need a job, and in those cases the interviewer and interviewee role is quite clear.
I might be the only one who actually remembers 2001-4, and trust me, during that time if you walked in with the "I'm actually interviewing YOU!" attitude, you were in for a surprise.
Not only do I clearly remember 2001-4, but I also clearly remember other times that were much worse: 1982-3, 1987-8, and 1991-2 (which was horrible).
I have been using my strategy of "I'm interviewing you." since 1979 and nothing has ever worked as well, good times or bad.
I feel like I'm making this comment over and over on HN, but why is it that when I share my experience of what has worked really well for me, someone tells me I'm wrong.
Couldn't agree more. My memories of that period are razor-sharp- you're not the only old fogie around here who remembers the aftermath of the last bubble...
>I even take it a step further: it's much more important the I make the right choice than they do. I am giving them my time, which I can never get back. They are giving me their money, which they have plenty of and can always get more.
The other employees at the company are people too, and their time is just as valuable as yours at a personal level, even if The Company in the abstract sense only sees it as a negligible increase in the payroll.
It's important that both parties make a good choice.
This reminds me that every single time Google recruiters tried to reach me after I interviewed (and got rejected) there they just stopped responding me after I got back to them
I find this extremely rude behaviour and managed to make my will of ever interviewing back to Google plummet to zero (that and the stories I've heard)
Also, yes, people screw up (me inclusive), get passed, such is life, but really, people should avoid alienating their candidates, and this seems to happen more often than not.
What I also find strange (rude?) if an application process requires a bit more effort from the applicant than just sending a CV and the other side does not even care about writing back a single 'No thanks'. Mapbox.com has been looking for engineers last month and you had to send them a C++ code solving some kind of pathfinding problem -- not a huge thing but still takes at least a couple of hours to code. So you invest 3-5 hours and then they don't have 30 seconds to inform you that you're rejected. Quite sad.
I had such an awful experience with Google interviews it completely turned me off from wanting to work there. I don't want to be around people like that.
I've come up with a load that I like to ask. Some of them are naturally answered during an interview process anyway, but generally there are at least a few left:
TEAM:
* How big is the team I would be working with?
* Do team members socialise out of hours?
* What is the average age of team members?
* How long has the longest member of the team been there?
* What language is spoken in the team - both socially and for business reasons?
* Does the company have a "no arseholes" rule (or "no brilliant jerks")?
THE WORK:
* What kind of projects would I be working on?
* What software development methodology do you use?
* Does the company release any software as open source?
COMPANY:
* How old is the company?
* Is the company constantly recruiting, or has it recently started hiring more people?
* How would I progress in the company? What opportunities for promotion exist?
COMPENSATION:
* What kind of salary range are you offering for this position? (I realise that it depends on skill and experience, but hopefully you should have a good idea of that based on my CV.)
* Does the company provide any relocation assistance?
I never ask the money questions directly, during the interview. It's a red flag for some companies, who seem to think that people should love the work and be paid for it as a happy coincidence. Salary negotiation happens after the company decides it wants you, and then you come in with a sack of potential nickels and dimes in benefits that they can give you in lieu of higher base pay. But you save all that until it is already clear that they want you.
Instead of asking about the salary range, ask about what local neighborhoods the employees live in. Look up the home prices later, on a real estate site.
Instead of asking about promotion paths, ask about how the roles of the employees have changed as the company has matured.
Instead of asking about relocation assistance, ask about how much experience the company has in hiring non-local candidates.
You can also ask about what the <position title> can do individually to increase the revenues of the company. That answer will give you an idea about how flexible they are on salaries for <position title>.
I understand why you wouldn't want to talk about money questions earlier on, but for me there's two main reasons to bring it up:
1) Employers have always me about my salary expectations. If they want to know from me, why shouldn't they answer as well?
2) If the range expectations are way off, you don't have to waste your time going through a series of interviews only to find out that their salary range is 10k less than you were expecting, or they don't offer relocation, or whatever.
Personally, I only ever want to be paid a fair wage; I'm not after the most I can possibly get. So finding out whether the range matches what the market seems as fair early on is important.
1) It's a double standard. You don't have the power to enforce fairness in the interview process. You can only react to prevailing tactics in a way that best preserves your position. Your best options are to not apply to positions that post a range too low, and to not discuss salary at all until an offer is on the table.
If you already have a job, and the prospective employer asks you for your expectations, defer and delay. If they will not proceed without your answer, WALK AWAY. Otherwise, name a price 20% higher than what you would be happy with, and qualify it by saying that what you learn later in the interview process may merit a revision.
2) $10k is peanuts to the company. If they really can't afford to monetize your efforts enough to pay you what you are worth, they should really be up front about that themselves, and put their range in the ad.
Otherwise, any company above a certain size can pretty easily justify budgeting $200k or more in salary and benefits for even a mediocre developer. A mediocre developer will never be able to actually get that much because of market pressures, but if a company can justify hiring their own developers at all, they can justify paying a little more for a good one. That's why the logical progression is to first find out how much you will be worth to the company, and then determine the compensation package that makes you a profitable employee.
You don't want to work for a company that determines compensation first, then scrambles to figure out how to pay for it.
In summary, always make the employer say their salary number first. If they won't, they are already trying to cut the costs you represent to them, before even hiring you.
The fair wage is the most you can possibly get [while still earning profit for the company].
"You don't have the power to enforce fairness in the interview process"
I can though, I can choose to not participate. While this hasn't always been the case, there is no position that I'd want so dearly that I'll let them treat me like dirt during the hiring process. If it pisses them off that I expect them to treat it like a 2 way street, c'est la vie.
I disagree, I believe one should just state what they expect. It wastes less time for everyone. If you take a guy through two or three interviews, decide to hire him, make an opening offer that's near the top of the posted salary range, and he comes back demanding 1.5x-2x that, you've just wasted a lot of time for everyone.
I usually ask in the first interview what the candidate expects to be paid. If I slip and forget to do this, I'd hope the candidate would ask what we expect to pay him. Much better to do this than try to skirt around it -- weird questions like "what neighborhood do most employees live in?" would turn me off for sure.
I ask about salary, how bonuses work, and equity options at the end of every interview, even though I know the people interviewing probably don't have much control over that.
They need to know up front that I expect to be compensated well, and this has worked out great for me.
If I were single and just looking for a good job that I enjoyed, then I probably wouldn't care, but I got a family to feed!
> Instead of asking about the salary range, ask about what local neighborhoods the employees live in. Look up the home prices later, on a real estate site.
Sadly, many people's home purchases seem completely disconnected from their salaries. Most people buy far more home than they need or can afford.
But I do agree that it doesn't make sense to ask about salary during the interview. It's quite possible to get a range by searching around, and you can wait until you get the offer to see an actual salary; that's then the point where you can start negotiating. Ditto for relocation assistance; that's effectively just a one-time signing bonus.
> Instead of asking about promotion paths, ask about how the roles of the employees have changed as the company has matured.
Personally, I'd ask one of the non-managers conducting the interview whether the company has technical leaders, and if there's a path for career growth other than becoming a manager. If there isn't, that's a giant red flag to me.
In particular, you'd want to distinguish between the people you directly collaborate with on a daily basis and the broader organization working on the same or similar technologies.
> * Do team members socialise out of hours?
Depending on your preferences, that can be a good question or a critical one. If you want to socialize out of hours, it's good to know if the team likes to do so. On the other hand, it can be critical to know that you're getting into a company where you have to socialize out of hours to fit in. Don't work somewhere where you're going to be utterly at odds with the company culture.
> * What is the average age of team members?
That's a very strange question; why do you think that matters, or that it's reasonable to ask? As an interviewer, I'd find that question extremely offputting.
> * How long has the longest member of the team been there?
Now that's an interesting question. Good to know the turnover of the team. Goes along with "how long has the team been around?".
> * Does the company have a "no arseholes" rule (or "no brilliant jerks")?
As much as I think this is a very critical item for a good work environment, do you think an interviewer is likely to answer that question any differently whether they do or not? Sure, if they come right out and say that they're willing to tolerate such behavior, run away fast. But otherwise, they either do have such a policy, or they'd like to think they do but they really don't in practice, or they'd like you to think they do.
> * How old is the company?
You should know that before you ever go to the interview.
> * Does the company release any software as open source?
If you can't find that out before going to the interview, the company isn't doing very well at it.
> That's a very strange question; why do you think that matters, or that it's reasonable to ask?
It's just to find out more about who I might be working with. It didn't feel weird to ask - but perhaps you're right. Often it's been explained before as part of the "how sociable is the team" question. ("Well, we're all family people, so...", or "Most of the team are in their early 20s so often out on a Friday night" etc.)
> As much as I think this is a very critical item for a good work environment, do you think an interviewer is likely to answer that question any differently whether they do or not?
This question is generally one I would ask someone who I would be working with as part of the team, and while you might not get a direct answer, you can tell a lot from how they answer. If it's a bit vague, then they probably don't have anything specific in place. But I've also had very enthusiastic replies along the lines of "Yes we do! In fact that's very important to us!" This can make a difference if there's multiple offers on the table and you're trying to figure out which offer to take.
The other questions are, yes, obvious, but they're basically leading questions. Asking about the company history can often give you some insights into recent events that might not be obvious from their website (and other sources), and replies to the question about open source are useful to see whether they're aware of open source practices inside the company (depending on the size of the company, there might be different things going on).
I've found that asking each interviewer what he or she is looking for in the role for which he or she interviewed you is enlightening. If the answers are very different between team members, it's a danger sign.
> Spring 2008, Microsoft – “Give me 10 ways to improve an elevator.”
.
.
.
The interviewer called me on it, and (verbatim) said “are you fucking with me?”
Got to laugh at the irony of this comment during a software/programming interview.
Long term recruiter friend of mine has always said a great response to the "do you have any questions for me?" is "if I could do this whole interview again, where could I have been better?"
Anecdotally, the few times I've used it, I've had a great or worthwhile response to that.
Edit: Obviously ask this at the very end after a couple of the normal questions about the company...
Similar question: "Based on everything you've heard in this interview what makes you think I'm not the person for this job?" I've used it once so far (that I can remember) and it led to a great discussion and eventually a job offer after what I believed was my worst technical interview ever.
The interviewer called me on it, and (verbatim) said “are you fucking with me?” I still haven’t met anyone else who got told to stop fucking around in an interview.
Which she can safely take as a sign that she should be very, very glad not to have "passed" that MS interview. It may or may not have been a very useful question to ask, but the interviewer's response indicates that he had clearly let the task assigned to him go to his head, and was basically on power trip, by that point.
The question that turned me into a babbling buffoon was “have you made any friends since moving to NYC?”
Also not an appropriate question to ask, and indicates a lack of respect for basic personal boundaries on the part of the interviewer.
It was also a terrible question, since you could have absolutely no technical knowledge of elevators and thus no thoughts about improvement. It sounds like it was meant to gauge her enthusiasm for making suggestions about things she's ignorant of. She definitely dodged a bullet there.
It was an appropriate question. This was not a technical interview, it was an interview for a job with a VC firm.
Someone in VC generally needs to have an outgoing personality and good "people skills". Ease of making friends in a new city could be quite indicative of what the VC firm is looking for in a new associate.
I, personally, don't want many friends. I relate more with Dr. Weaver in MIB, i.e. "I hate the living". But I'll never be interviewing for a VC job.
I have been interviewing a lot lately, and I have to say that Company's really expect you to waste a lot of time just so they can weed you out.
Here is a coding exercise that will take around and hour. Once you finish it you never end up hearing back anyway and when you send a followup they still don't respond. How are can you know whether you should waste your time doing a coding exercise or not?
If its not coding exercises its an excessive number of hour long interviews, or the employer requiring that you work with them for free for anywhere from a few hours to a week.
Is there any way to weed them out before you waste so much of your time?
>Here is a coding exercise that will take around and hour. Once you finish it you never end up hearing back anyway and when you send a followup they still don't respond. How are can you know whether you should waste your time doing a coding exercise or not?
If you don't hear back, the company's not interested. Few people write rejection letters as few people react well to them.
We do coding exercises before we interview candidates, but try to keep them as minimalist as possible. It sucks for the candidate who is doing 10 of these a week, but companies waste huge amounts of time with people who are totally unqualified and the pre-screen is necessary to weed such persons out.
>If its not coding exercises its an excessive number of hour long interviews
Hiring someone is a big commitment. If a company wants to interview you a reasonable amount of times, be flattered and enjoy it. Recognize that this is a big commitment for them and they have a lot of candidates to choose from.
>or the employer requiring that you work with them for free for anywhere from a few hours to a week
Stay away from any company that wants you to work for free. Sure, a probationary contract is fine, but if they're actually expecting you to do any non-interview work without paying you for it, you don't want to be involved with that company. Don't even entertain these types of offers.
>Is there any way to weed them out before you waste so much of your time?
Look online for postings that discuss that company's hiring processes. In your cover letter, tell them that you're excited about the prospect of working for their company and ask about their interview process. This will hint that you're sensitive to excessive prospective-employer time consumption, and you'll probably get back some kind of answer with which you can make more of a decision. After you interview, post about the process online for future applicants' benefit.
And somewhere on the front page of HN right now is someone whining about an engineering "shortage", whilst telling engineers that applying to their company costs 2-8 hours of time. The cognitive dissonance is a little hard to take, is what I'm saying.
I mean, I understand that it can be demanding and have personally halted my applications when people had interview "tests" that were obviously hours of work, but you can't expect the company to hire someone without doing a reasonable amount of due diligence, which usually includes at least some basic exercises and multiple interviews. Like I said, hiring is a big commitment for the company -- bigger than people who've never employed people often think.
Most interviewers will be sympathetic because they'll remember what it was like when they were applying for jobs, but that doesn't mean they can just hand-wave away all the requirements.
Of course companies need to verify you can actually do the work for which they are potentially going to hire you.
However, if you hand me such a task (or glassdoor says you will), I have to be really excited about your company to spend my time that way. A 20 minute shared-coding session in one of the dozen online collaborative edit tools would probably give you most of the same information while saving a lot of the candidate's time.
The code exercise we distribute shouldn't take a competent developer more than 20 minutes. I agree that you don't need to waste a lot of the dev's time.
In the last two days, I've gotten coding exercises that are supposed to take a eight hours, and one that was based on an api that doesn't exist anymore, that would be a solid two days of engineering time if the apis worked.
I hate what Silicon Valley companies (Google, Amazon, etc.) have done to the software engineer interviewing process. It heavily favors recent college graduates and destroys job mobility for older senior engineers who have a busy life.
For example, look at the answers to this Quora question about interviewing:
The first reply mentions spending 5 weeks of studying, 2.5 hours every weekday and 8 hours on every weekend day. That's 28.5 hours of studying every week. 5 weeks of that is 142.5 hours. And he also spent time doing mock interviews.
I have a family and as a senior engineer I'm busy with work. What little free time I have is spent keeping up with new technologies. It has been many years since college. This process is basically very hostile to most senior engineers who have years of experience. I wish more companies would recognize this and change their process.
People who are studying that much for the interview are never going to make it at those companies even if they "pass" the interview. They will be managed out in a year or so since weeks of studying to produce actual work isn't really a viable strategy.
Having done 200+ interviews at one of the Big Companies you can generally see through "studied and memorized the question" from earnest attempts at solving it as well (asking them WHY they are doing something is an easy tell).
If I were going out to interview again, the main thing I would brush up on is coding small example problems on a piece of paper/white board. The transition from IDE+internet -> whiteboard in a high pressure situation is not something you want to be coming in cold for. If you are a senior engineer, the problems/coding themselves shouldn't be that hard to tackle blind, but doing them on a whiteboard will throw you off if you haven't tried recently.
Many years ago an interviewer had me handwriting my solution to a code challenge on a whiteboard. As I scribbled away I had a sense that something was amiss...the ink on the pen didn't smell quite right.
Focussing on the problem at hand, I dutifully filled the whiteboard with my solution.
All was well until I needed to erase the board, only to discover that I had selected a permanent marker rather than a dry wipe one.
Whiteboard ruined.
I did not get the job, but I did learn the importance of checking what type of pen you're using _before_ you start to use it...
You also failed to get a job at a company where they leave permanent markers by the whiteboard. If that's indicative of their codebase at all then perhaps we should reword my first sentence to "You succeeded at not getting a job at a company where they leave permanent markers by the whiteboard".
Also, IME, that stuff is super easy to get off if you just go back over it with a regular dry erase marker.
Oh please. Someone use a permanent marker on the whiteboard? Take a regular ol' whiteboard marker and scribble over what you wrote. It'll take those "permanent" marks right off.
I was actually surprised that this isn't common knowledge so I made a video just now demonstrating (in case you don't believe me):
It looks like everybody keeps a permanent marker next to their whiteboard. I have no idea why, but I make sure to ask the responsible person every time I see one. (I never got the same answer twice, I once got one that was honest.)
If richev really lost the job because of the marker, he safely got out of a place where people lose jobs because of powerfull people's (the interviewer) fault. Good for him.
The permanent markers are there to mark the writable disc media.
But everywhere I have worked, the dry erase markers are kept near the whiteboards, and the permanent markers are kept next to the stack of blank discs, or near the disc-writer drives. Keeping them both in the same place is a Murphy's Law infraction.
1. Can't hire people who are already employed (few people would be willing to quit or take multiple days off for a potential job)
2. Burden on existing employees to find stuff for potential hires to do, set up equipment for them etc
3. Huge amount of time is wasted for every rejection
4. Can't possibly have the time to let every applicant do this
5. To narrow down the applicants, you have to....interview them anyway
I've always found this tricky, as generally interviews with me go both ways, and I'm asking questions about the work, company, people and so on throughout the interview.
If you need a safe fallback, asking them to describe your typical day, who'll you'll be working with, and what project(s) you'll start with are both useful and a pleasant note to end the interview on.
I usually just go to the fallbacks because I honestly have no questions. So I just go to the standard BS. I don't really care about the company to be honest. I've never liked any job I've ever had in this industry and I don't really see that changing based on company. I only work because I have to. to provide the lifestyle I want for myself and my family. I work because I need money and that's the absolute only reason.
I know people are going to tell me how wrong this is but I'm just being honest. How can I pretend to be interested when I'm actually not? Coincidentally I've been looking to make a move and not finding anything but I guess that's not surprising. There is nothing I really like in life but at least people tell me I'm pretty good (or at least I've never been fired) at this software stuff so I just stick with it.
Holy hell! Get out of my brain. That's my life, not yours.
On a more serious note, drop me a note if you want. I've been wondering for some time at which point most of us lose (not really the right word. maybe fades is better) that drive.
Its kind of sad (and telling) that you expect people here to jump in and tell you your opinion is "wrong". Have an upvote--I don't think there is anything wrong or even unusual about your attitude. In reality, I've worked with many more people in Technology who work because they like getting paid and whose job is "just a job," than I've worked with people who were passionately in love with writing an accounting app or CRUD web service. Not saying that attitude is "wrong" either, but it does appear to be the prevailing one in this community.
I think this stems from so many articles about "passion" I see on HN. That and when I look at job posting they always want someone who has contributed to a significant amount of projects on github. If you can't share your day to day work publicly like that (I can't) then it must be open source or side projects. To take on things like that I feel like you need to have free time, and then the drive to actually want to do those things after you've spent 10 hours or more at your day job. Then if you don't have a profound github profile I feel like you aren't taken seriously, at least as a developer. I don't think passion is a requirement to be good at something.
I think it's another HN bubble thing, though. It's been a few years since I was out interviewing, so maybe it's different now, but I would honestly be shocked if I interviewed with someone who even knew what "Github" was. Obviously it depends on the specific field you're looking in -- if you're interviewing with startups in San Francisco, then sure, the HN view might be helpful, but the vast majority of companies are nothing like that.
You're lucky. Every job that I have ever liked even a tiny bit in this industry has been pulled out from under me and tossed in the garbage. So I know there are jobs out there that I would like; I just can't have any of them.
The problem I have with this question is that it is at the end of the interview. The questions I had, I asked during the interview. The questions I have after reflecting on the interview I can ask the next time (or not, as it often happens), but I almost always answer this question with "No", followed by summarizing my experience during the interview, telling what I learned about the company/job/other person, and see if something else comes up.
If the interviewer wants to know if I have learned all that he/she wants me to have learned during the interview, he/she should ask more specific questions.
I know that in many communication training programs people learn to ask questions like this, for it is good to explore if your goals have been reached, but for that to happen you have to take charge of that exploration, not hoping that the other person somehow does it for you.
"In the trade-offs between time, cost, and quality, we know you can have two but not all three, which two are valued here? And you can't say we value all three."
The last part is important, because when I first started asking it people just said they were special and did all three, but we know that it never works that way.
The author lost me right at the beginning: "It’s important to realize that one bad interview doesn’t mean you’ll never get a job. It might just mean you aren’t a good fit for that company, or that you didn’t prepare well enough."
While it might mean those things, it's just as likely to mean that the interviewer is unprepared. This happens surprisingly often. Interviewers will either ask questions you've been asked already, or they will make up questions on the spot that they think they know the answers to but don't.
Maybe your interviewer spilled coffee on themselves on the way to work, maybe they just interviewed 3 candidates in front of your and they are exhausted/picky.
Quite often an interviewer will fail to clarify an important issue, and give negative feedback because they aren't sure if you're competent in that area.
I've also been in the situation where I'm on the umpteenth interview with the company when the "Do you have any questions?" question comes around. I try to have at least one question about the company where the answer might vary from person to person. Something like "What's one thing you'd like to improve about the company?" or "What's your average day like?"
Even if interviewers compare notes, I don't look weird for asking the same question, and I don't have to awkwardly admit I don't have any questions.
This is a great blog post because it confirms that hiring managers ask wacky questions all the time. (I confess I've done this as well.)
I'm writing a career management guide right now, and one of my chapters is explicitly on this topic ("How to ace your next interview"). I think about this a lot (I'm a hiring manager, currently building my team, so I've been on both sides of the desk). I break the interview phase down into four phases (Preparation, Pre-interview, Interview, Post-Interview). I think "Preparation" and "Interview" are really appropriate here.
Here's what I recommend thinking about when preparing for an interview:
PREPARATION
- Do basic company research. You should understand the basics of the company: what they do, how they make money, how big they are.
- Know which job you’re applying for. Read the description a few times to make sure you understand it well.
- Know which other jobs the company is trying to fill. You can learn a lot about a company by looking at their job openings. See if you can get a sense of where they’re currently focused and how you can either contribute directly to helping them get there, or how you can contribute indirectly in this job. Take note of other jobs you might be a good fit for, just in case.
- Prepare for the dreaded salary question. They’ll probably ask what you’re making now, and what you want to make. I recommend telling them your current salary (because they can probably figure it out anyway), and not telling them your desired salary. For the desired salary piece of the dreaded salary question, I usually say, “I want this move to be a big step forward for me in terms of both responsibility and compensation.”
INTERVIEW
- Be early. Don’t keep your interviewer waiting—that’s a horrible way to make a first impression.
- Bring a notebook and your resume. You should take notes, and it’s possible your interviewer won’t already have your resume. Be prepared.
- Try to relax and be honest during introductions. It’s ok to make small talk for a few minutes so you and your interviewer can get settled in, but don’t spend too much time on this.
- Come prepared for different types of questions. Here’s a partial list of common types of questions you may be asked:
* Questions about your resume
* Questions about you personally
* Questions about tools and technology
* Technical questions
* Questions about your career goals and aspirations
* “Why do you want to work here?”
* Questions about “a challenging situation”
* Questions about special projects or side projects you’ve done
- Don’t be afraid to ask for some time to think about your answer. This shows intentionality and may help you formulate better answers to tricky questions. But don’t do this more than a couple times during an interview.
- Don’t be caught off guard by crazy questions. If your interviewer asks you something wacky, just gather your thoughts, listen carefully, and formulate the best answer you can. Make sure to account for any constraints that are part of the question as well.
- When things start wrapping up, look for opportunities to ask questions to learn more about the company and the role you’re interviewing for. Here are two good questions you can ask if they haven’t been addressed already:
* “So what does a typical day look like for this role?”
* “What are the greatest challenges for your team right now?” or “What is the greatest challenge for this particular role?"
If both of those questions have already been covered, see if any of your Pre-interview questions might work.
- Only ask questions if you can learn new information from them. If you’ve already covered everything in your interview, it’s ok to say, “I think we actually covered everything already!”
That's a summary of each phase, and the chapter itself goes into quite a bit more detail.
It would be nice if candidates were this prepared! It's good advice, at least for the way we interview. On one particularly egregious occasion, we got through the "soft" questions and told the candidate, "Now we will ask you some technical skill questions," and candidate said, "I didn't know there would be technical questions" (this was for a software developer position), and refused to answer them. What else would someone possibly expect??
That's exactly why I'm writing a book in this topic. So many aspects of career management seem mysterious but are really pretty straightforward. Interviewing is something most people just don't do very often, so it seems mysterious. But they're all pretty much the same, and are easy to prepare for if the candidate knows what to expect. I want to help people know what to expect. It'll help people find better jobs for their skill sets, and will spare hiring managers from painful interviews.
I'll piggyback onto this article with a few mistakes I made in the past.
1. Correcting the interviewer. In one of my interviews, an MD/PhD was explaining to me his experimental design, which involved training a cohort of people to do a task, then afterward subjecting that cohort to electrical brain stimulation while performing the task in order to compare results on the task. Concerned, I mentioned that the experiment wasn't controlled for people merely becoming better at the task as they had more exposure to it. The person in charge didn't approve of this, and perceived it as an attack on their experiment. Clearly, this was the point at which I "lost" the interview. Lesson: the interview isn't the place to tear apart problematic projects.
2. Being honest with the interviewer. In another of my interviews, I was discussing various volunteering projects that I had undertaken. The woman who was interviewing me was old enough to be my mother, and seemed to be approving of my extensive list of volunteering opportunities, which she had inquired about. This lulled me into a false sense of security, leading me to disclose one of my volunteering projects which involved video-game-based mentorship of disadvantaged youth. This immediately raised her hackles, prompting her to ask if I "played video games a lot". I said yes, being young and stupid, assuming it'd be absurd to hold something that I did in my private time against me. I "lost" the interview" with that admission, even though I'd been golden up to that point. Lesson: the interview isn't a place for anything other than pushing the interviewer's buttons until you get exactly what you want.
3. Asking questions for which there is no feel good answer. In yet another interview, I started to get a whiff of desperation from the interviewers regarding workflow from manager to employee. I probed the issue, then asked directly, "How is success measured here?" suspecting that I'd get an answer like "completed projects per week" or something else which would come off as overly controlling to employees. I was told there was a quota based system. This turned me off immensely, and turned the interviewer off as well for having to admit such an embarrassing thing. I still got a job offer after this mistake, but I ended up rejecting it. Lesson: don't embarrass the organization you're interviewing for by making them admit weaknesses.
4. Permitting bad behavior from the interviewer. In three (3) separate interviews for different organizations, the interviewer arrived 10-15 minutes late with no apology. In the first of these interviews, the interviewer's beeper went off, causing a flurry of cussing and an interruption of the interview for an extended phone call. This happened again later in the interview. I "lost" the interview because of the constant interruptions by the interviewer's other commitments, and didn't get the job-- maybe a bullet dodged here. In the second of the three late interviews, the interviewer notified me beforehand he'd have to stop in the middle in order to check his son's scores, as his son was in some sort of sports competition at that moment. Sure enough, the interview was in a state of anti-flow due to his constant pausing and checking his son's scores, at times cheering quietly. I "lost" this interview because of blatant disrespect-- maybe another bullet dodged. The final late interview was spared any interruptions, but was instead occupied by a bizarre egotistical rant based on the interviewer's past accomplishments, detailing how the interviewer had presented his research to a crowd of many people and made a name for himself. This was irritating, but tolerable. Following his ego-trip, the interviewer then went on to compare me and the other (not present) candidates to his son, saying how his son was the ideal candidate and that everyone in my generation other than his son was extremely entitled and should really lower their expectations because of how hard he had it when he was coming up. I can't make this shit up. I lost the interview when I failed to behave like his son. Lesson: don't be afraid to stand up and walk out of an interview if the interviewer isn't prepared to take you seriously.
> Fall 2005, Princeton – “Do you have any questions?”
Before I get to this question, I've researched the company so much (products, monetization, even approximate salary ranges), that I've to play like I don't know and ask something... :)
Interestingly, while trying to think of real-life examples of things that were either iteration or recursion but not both, I realised that any example of one could be considered an example of the other. I'd already known & been comfortable knowing that they are equivalent, but now I understand it in a way I didn't before.
I thought about it too. Most biological systems that grow are examples of recursion (like trees). Most human manufacturing systems are examples of iteration (production line, building with a crane floor by floor).
The problem is that the OP is fundamentally approaching the interview process as a role in which she must please the interviewer in order to be granted the prize of a job. All of her advice is to prepare better and be more on your game so that the other person might perhaps like you more. Coming in with this mindset automatically puts you on a back footing and makes everything more difficult.
Instead, focus on flipping the status game around. When you're with the interviewer, you're with a peer. Talk to them as if you're talking to a friend, not as if you're in a high pressure, life or death situation. Take the VC interview, for example. Imagine if you're catching up with your best friend from college and they ask you if you've made any friends in NYC yet. Do you freeze up and start blabbering incoherently? No, you laugh about it and bitch about how tough it is and ask them if they have any advice or whatever it is that you would do. Approaching it this way changes the entire tenor of the interview process.
This is where unskilled and unaware of it genuinely comes in handy. People who are just bad enough that they have no idea how they compare easily sail through interviews since they assume they're above average while genuinely talented people spend so much time comparing themselves to others they get wracked by insecurity.
I know this is something easier said than done and that some people in particular find it especially challenging. So is learning Javascript or Photoshop, yet we don't complain when a job requires us to know them to be hired. Learning social skills is as equally important to your career as technical skills so just nut up and do it.