Hacker News new | comments | ask | show | jobs | submit login

I was able to read the article before it got hugged to death by HN.

That said, like many similar interview/hiring stories shared here, it reeks of single-sidedness. Specifically, there is not enough detail regarding your interactions with the interviewers to warrant calling this a horror story. The only points of interest in this piece, in my opinion, were that the interviewers were late and there was a clear communication issue (particularly when it came to scheduling the interviews).

Other than that, all we know is that you tripped up during some of your interviews. In those situations, based on your post, it was never really your fault, which is not the best attitude to have.

Finally, them saying that your engineering skills needed more work shouldn’t be insulting. Amazon hires tons of engineers and they are generally very technically competent. However good you think you are, there are millions who are just as good, and there are thousands who are better. Amazon can only hire so many people and this was likely their way of saying they simply had more candidates with more experience.

I know it is frustrating. I can say this because I have absolutely been in your shoes. (Dream job, all the way to the last stage, then no offer.) At the end of the day, we have to acknowledge the competitiveness of our field and use that to drive us to become better.




My understanding is that a lot of this abrasiveness on interview day (third interview for me as well) is mainly about judging response and culture fit. I found out a lot more a few months after my own similar experience with Amazon. I think MS's lot drops are far more egregious though.

The keys are not to let it phase you, stay positive and ask clarifying questions to give clear answers. It's often far more about personality than you may think.


Why would I have reason to be abrasive? Am I expecting people in the company to act like that on a daily basis?

Honestly, I just need to know that they can code to the level expected, work together, and aren’t completely looney.


"Why would I have reason to be abrasive?"

Interviews are mostly (~80%) about evaluating the candidate for fit. They almost always have a time limit. The interviewers job is sometimes made harder by a candidate who answers a question different from the one asked, or who rambles unnecessarily, or who continues talking after the interviewer is satisfied with the answer to a particular question.

In these situations, the interviewer needs to quickly cut off the candidate and move to a different line of enquiry in order to collect enough useful signal during the allotted time.

This can come across as abrasive to some people, particularly if it happens multiple times during a single interview. And the impression can be compounded if they feel the interviewer cut them off as they were saying something which would have increased their odds of success.


"Interviews are mostly (~80%) about evaluating the candidate for fit."

Interviews in our industry are the chaotic mutant hybrid of "Guess what I'm thinking!" and fraternal hazing rituals.

I've been interviewed a few times by self-declared bar raisers. Not impressed.

One raiser dismissed outright all my work on grammars, saying the tool (ANTLR) did all the work. Awkward pause. Has he never written a parser? Is he making a joke? Oh. He's serious. Unfortunately, I eventually sarcastically replied "Ya, and the compiler writes all my code for me."

I'm not a CS researcher. Our pithy jobs are client/server CRUD apps with some glue. Cut a string from here, paste it over there. Do some validation. Make sure the concurrency scales.

Not rocket science. Stop treating me like an initiate. I've been doing this longer than most.


I don't know if you are referring to Amazon bar raisers but most of them are Dev Managers who don't write code on day-to-day basis. And this is a common problem where they don't understand the technical depth of the problem a candidate has worked but still have most weightage in debrief even on technical strengths.


LOL, I'm not saying I agree with the practice. That said, many of the most impressive programmers I've met were less than typical in terms of personality. Being able to work with all types, including when a person is having a bad or rough day is important. There are times when you've been working 16-18 hour days for a few days and can get cranky.

I've worked with all types of personalities. The only ones that ever really bugged me were the excessively arrogant. Some types just grate on you. It's how you deal with and interact that is important. Can you get along with people that are different? Different backgrounds, personalities, cold, super-warm, etc. The culture fit is incredibly important for good or bad. One person can make a team very toxic very quickly.


> Being able to work with all types, including when a person is having a bad or rough day is important.

Inability to work with all types here is primary displayed by the "less than typical" personalities through. Not by someone who decides that he does not want to answer insults with "please may I have another one, sir". I understand importance of not being overly sensitive, but so should be valued ability to control yourself and not be abrasive in the first place.

Otherwise being asshole becomes competitive advantage in that company.

I don't mean to say that less then pleasant people should not be in team, but that criticising them and refusing to accept that behavior should be standard and accepted responses by other people. Including leaving the room or directly defending themselves.

> There are times when you've been working 16-18 hour days for a few days and can get cranky.

That is planning and organizational failure. Also self-awarness failure. No one is effective at 18 hours a day and demanding that collegues tiptoe around you or and spend effort on your crankiness instead of work is a.) unfair b.) ineffective.

If others can't tell you about you mistakes or question you or just have to deal with abrasiveness because you are cranky after sleep deprivation, then it is your fault and you are slowing others down.


>working 16-18 hour days

I hope not. If so management need to be replaced


If that is regular, yeah. I took it as that happens for a few days in a row irregularly. If once or twice a year, one finds oneself (and, presumably their team) in an unusual crunch or fighting fires for a couple of days, that does not strike me as unreasonable.


“Culture fit”. I’m sorry, isn’t this just a term for whether they like or dislike you personally? Sounds like a form of discrimination.


The term “culture fit” sounds very vague, but at many companies there are clearly defined criteria, you just don’t know them.

For example, a company may practice test driven development (TDD), and may evaluate for a candidates ability and desire to use TDD as part of their engineering culture fit. TDD is not necessarily better than alternatives, and a candidate may not necessarily be better because they can do it. It might mean passing on better candidates who don’t prefer TDD.

Culture fit can cover many different aspects, and most are not about being past a “good enough” bar, but rather valuing the same things as the company. To “fail” a culture fit interview is arguably a good thing as otherwise the candidate may have found working at the company unfulfilling, uninteresting or difficult.


The company should be training employees to use their process, not expecting to hire people who already prefer their process. TDD is not some magical thing that requires years of study and practice and apprenticeship to do correctly. It's an approach, you apply it, it might be a little weird for a few weeks if you're not used to it, and then it's fine. What next, will they reject people for preferring trunk-based development over git-flow?


TDD is really one of those things you either like or don't. I for one hate working that way and would be happy to know about it as early as possible. No amount of training will change that.


Some engineers are happy to use the process that works in the company, if that means going with TDD then they do that, but they have no strong feelings either way. That could be a good culture fit!

Some engineers have strong feelings and would prefer not to work in some ways. There are ways to do great engineering without TDD, they may be great engineers, but for a company that practices TDD they may be a poor fit.

To take it to a bit more of an extreme: I like code review. I believe it's a good thing. I want to have my code reviewed and to learn from that, and I want to be able to review my colleagues' code and know that they will take the feedback seriously. I would not work somewhere that did not do code review as I believe it correlates with good engineering practices. In this way, I would be a poor culture fit at somewhere that did not do code review, as I would be pushing to have code reviewed, or wanting to.


My favorite cultural fit failure was trying to opt out of the weekly mandatory surfing lessons, barely got my wet suit off before I was called to a Friday morning meeting with the founders and told to grab my stuff and leave quietly.

No more startups for me, thank you very much.


I think that's a particularly bad example, and I'm sorry you had such a bad experience of startups.

If you had been asked a bunch of questions in your interview that boiled down to "do you like surfing", then you may have "failed" that interview, but that would have been good for you and the company as you ultimately did not have the culture fit they were looking for.

Obviously desire and ability to surf does not correlate with software engineering ability (I assume that's what you applied for?) but things like communication, learning practices, candour, empathy, etc, can correlate highly.


It was worse than that, I relocated to another country for the job and they had just helped me setup a four month apartment contract.

I was informed that they liked to go surfing together during the interviews. It just turned out that bobbing around in freezing water with surfboards shooting at me from every angle just wasn't my thing at all.

Of course that's not the real why, my team lead was an arrogant and ignorant asshole who liked to throw developers under the bus to cover his own ass. Which doesn't work that well on people with a tiny bit of experience and integrity.

But cultural fit, like codes of conduct is a fine tool when you want to get rid of someone.


It is a tern for wheter they like or dislike you personally, but I certainely wouldn't call it discrimination. Plus, it's critically important that employees enjoy working together.


>Sounds like a form of discrimination

Yes, it is, because no one wants to work with jerks and weirdos. It is jerk and weirdo discrimination, which is fine.


Yes. How else but to discriminate would you discern to hire one employee over another?

Assuming they have roughly equivalent experience and backgrounds. It comes down to how well you might get along working with someone. Every office has a culture, and working where you and the company are a bad fit sucks a lot. It usually means sticking it out for a few months just to see if it settles down, or that things get better. Then starting the whole interview process all over again. I'd much rather self-eliminate or be eliminated quickly. Hell it's often after several interviews that you just get a bad feeling, or are dropped from the other side.

It's ALL descrimination. That doesn't mean they are descriminating by a protected class (gender, sexuality, race, etc). If everyone in the office went out for drinks every night at the end of the day, working into the evening, I wouldn't be comfortable with that. Once in a while, sure. It really depends on specifics, that doesn't mean it's inherently bad.


If you ran a company wouldn't you enjoy to work with people you personally liked?


yes, like ability to code in nodejs is also a form of discrimination.


I completely agree with your assessment. At least once a week I deal with people being late for meetings / interviews / whatever. Heck, sometimes it's me running late. That's just how life happens sometimes. Yes, in an interview situation, we all want to be treated well and for the interviewers to be prompt and positive. When they fall short, however, it's a far cry from a "horror story". Just my opinion.


If it happens once, sure. If the entire process is people forgetting, rescheduling and changing things, it isn’t really isolated any more.


As Mr. Fleming put it:

> Once is an accident. Twice is a coincidence. Three times is an enemy action.


For anyone who knows their stuff, this field is a golden ticket, and you don't need to work for some asshole like Bezos to cash it in.

The whole process outlined in the post was needlessly disrespectful of the candidate and his time.

I wouldn't excuse a Godless megacorp like Amazon with this awful scarcity mindset. It is poison.


This HN thread is a shocking reminder of how many people view corporate sadism as normal or even good. That kind of nonsense is what engineers should be shielded from, not the other way around. I prefer to keep my dignity, thanks.


Yep. Sometimes I don't know why I bother to comment on these things.

Cosmic justice would probably be better served if we just kept our mouths shut, and let them make their own beds.




Applications are open for YC Summer 2019

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

Search: