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.
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.
No more startups for me, thank you very much.
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.
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.
Yes, it is, because no one wants to work with jerks and weirdos. It is jerk and weirdo discrimination, which is fine.
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.