I once fell into the position of having to hire for a fast-growing new team at a large corporation. We didn't have a manager yet, so our department's VP trusted me to make hiring decisions.
I made the first 20-ish hires, then helped out with 20 more. When we eventually got a director and other managers who were peers to me, I held the informal distinction of being able to make good hiring calls. Many of my hires rose quickly in the company, earned strong performance reviews, and even won awards at the company.
Eventually, I become a middle manager and had to teach managers I supervised how to hire in a similar fashion. Relying on me to make a final call wasn't scalable.
And that's when trouble began.
A few bad hires leaked in. For the first time, our group experienced attrition. So I set about to try to systemize my recruiting process such that it was repeatable by others.
That's when I had to codify our team "culture", which was something I used to help with my hiring decisions. There were times when I made a call to hire a candidate who seemed too junior for a role, because I felt there was a strong "culture fit."
Of course, what I realized was, I was simply assessing for typical soft skills, as well as personality traits such as tenacity, initiative, quick study, etc.
In other words, there was no magic. I didn't have some special gift for hiring. It was just a simple unspoken template in my head. And it wasn't exactly "culture" either, as much as it was a set of personality traits that every company looks for.
I suppose what I came up with was basically a "structured culture fit screening assessment", to borrow the article's parlance. If you don't have something like this, I'd highly encourage that you look into it. Not only can it help minimize bias, but it can also give you a repeatable process for all of your company's hiring managers.
My experience about 'culture fit' was that it was a code word for ageism. Sometimes they'd be even more direct if I pushed back. This wasn't at the end of a 45 minute interview, it was in the first five minutes after I'd already passed the technical review. Might not be true in every instance, but I absolutely cringe when I hear that phrase.
My experience about 'culture fit' was that it was a code word for ageism.
I've experienced people figuring out my age when looking at my resume, then weirdly warping the questions while accusing me of Googling the answers in response. (Based only on hearing me type. I was scripting a Python script to give the answer.)
Interesting, that instinct to Google for the answer is actually one of the 'culture fits' that we look for.
Interesting, because many candidates would (rightly and safely) assume that you're asking if they already know the answer - not if (duh) they could just google it. And accordingly, to respond with "just google it" would mark them as a plodding, uninspired programmer - and definitely cost them points (or even outright sink the interview).
There are a surprising number of candidates & engineers that simply give up when they encounter a hard problem.
It sure is easy (and gratifying) to feel categorically superior to a significant portion of the people who walked in through that door with the idea of landing a job.
But Occam's Razor suggest that, rather than being a bunch of gutless dolts - they were (perhaps as a result of being bludgeoned by one soul-crushing interview experience too many) simply assuming a more conservative acceptance level to your question than you thought they were.
>to respond with "just google it" would mark them as a plodding, uninspired programmer
I do not believe that this logic works in all/most/many scenarios. I would not be asking a question in an interview that could "just" be googled. That generally would suggest that I am asking for trivia as opposed to asking for understanding.
perhaps if you make it clear that it's okay to Google, then you might get a different outcome. it's highly common for candidates to assume that in an interview, it's not allowed or highly penalized to do so.
I've never googled something in an interview (typically for the face-to-face part I'm not at a computer so that would be difficult, and googling under pressure seems like a bad idea).
But I have told interviews that I don't know, but I'd google it if I needed to in a work situation, and that's always been received positively. I guess it depends on what they're asking about though. Some stuff you should know off the top of your head...
I would google for the answer too if the expectation was to find the right solution quickly. I have rarely had an interview where they gave me time to think through a problem. The wanted "the" answer quickly without much thinking.
I know a guy who was an engineer at a very well known US based engineering startup that made real physical products. Lots of top engineering grads from top schools apply there. His observation of young interns from top schools was that when the fresh engineering grads (or soon to be grads) ran into a problem that they couldn't solve, many didn't know how to react or didn't take it well.
They all had been able to get that far in their academic career because they had been able to solve problems, and solve them well and quickly.
When they ran into hard problems in the real world that they couldn't solve, some couldn't handle it well.
We had agreed ahead of time that the interview was going to be conducted with Python. As a Smalltalker, I thought it would be quite natural in Python to just script the answer to a calculation question. My interviewers turned out to be a couple of "C++ bros." They were very bro-y in their disparagement and tones of voice.
My friend once interviewed for a low level position at a well known startup company. He passed HR, took and passed competency tests, passed interview by future coworkers. Last interview was with manager of the team who happened to be a young woman who was a brilliant coder.
He didn't get it. He was sure that her expression changed negatively very slightly once she saw him on the video conference. My friend is quite sure it was due to either ageism or subtle racism. He is not white.
He's moved on but it confirmed to him fair is not a word he believes in anymore.
It’s really anything that doesn’t match the team’s (or individual interviewer’s) notion of what a good developer looks like. So it could be how you dress, how you talk, even if you are white and male and not over some age threshold.
And I suspect much of that is not conscious, which of course makes it difficult to talk about and address.
I got the job I have now while, for lack of a better term, being "visibly trans", the only person of my race on the team, and also well into my 30s. I don't think it'd be possible for me to look more different than I do from my teammates (especially how the team looked when I started - it's grown and become somewhat more diverse since)
That said, I do worry about how my presentation will be perceived elsewhere, it comes time to move on.
"Culture fit" is a double-edged sword, and implies you have a strong handle on what your culture is in the first place: both the good and the bad.
A candidate who is conflict-adverse, for instance, would not be a "culture fit" in an organization where decisions are made in screaming matches.
The problems come when your culture is toxic, particularly for certain types of people. If older candidates wouldn't be successful or happy in your work-20-hours-a-day-know-it-all culture, that's a culture problem, not a dog-whistle for ageism.
Some interviewers use "culture fit" to explain a not-like-me discrimination against people with a different gender, background, age, race, etc. Those people are generally toxic—but also indicative of an organizational culture that tolerates those biases by employees who are external-facing representatives of that company.
As a candidate, if you're ever rejected as a "bad culture fit", you probably dodged a bullet. That's a negative reflection on the company, not on you.
It is more than agism. It is a cover for all kinds of "We cannot tell this person we won't be hiring them because we dont like them as they are a protected class so we need to come up with a creative excuse"
Agreed. But should they? I mean if I start a company with no recourse to public funds why should I obliged to employ someone I wouldn't want to work with? I understand why it is illegal. I think the ethics are debatable too. Most importantly, I think both are routinely violated under some guise such as 'culture fit', etc.
> I mean if I start a company with no recourse to public funds why should I obliged to employ someone I wouldn't want to work with?
Because otherwise certain classes of people will never be able to get certain classes of job, despite being qualified, because the people who hold those jobs are all members of another class who doesn't want to work with them.
For example, at various times both women and African Americans couldn't become doctors. There is no evidence that women or African Americans are worse at being doctors than men or white people, but the people who _were_ doctors (mostly men and mostly white) at those times didn't want to work with them, and culture suggested they were not capable of performing that profession.
Preventing discrimination against protected classes is a balancing act - balancing the infringement on the liberties of a group that systemic discrimination brings vs infringement on the liberties of an individual or single entity by saying they cannot make choices based on certain criteria. The protected classes that exist now (such as gender and race) exist because far more harm is done to far more people when they don't exist, even factoring in the fact that certain people will lose the ability to make certain choices based on all the criteria they'd like to.
But saying, "We think you're too old to be a good culture fit" is illegal while saying, "You're not a good culture fit" isn't. That's likely why companies don't say so directly, no?
The Age Discrimination in Employment Act is much narrower than commonly assumed. It only forbids discrimination against workers age 40 or older. It does not forbid ageism for being too young, nor against a 39-year-old for being too old.
More generally: discrimination in employment is legal by default and excepted only by specific prohibitions, which include race and religion and gender but not much more than that. Here are some attributes that are legally perfectly permissible to discriminate either for or against: smoking, obesity, height, glasses, alcohol use, vegetarianism, sports team favoritism.
If the culture is naive fresh-out-of-college engineers enthusiastic about being exploited by management, sure. Not sure what else it could be. Posting memes on slack?
I'm in agreement with other commenters here that "culture fit" usually feels like a euphemism for something else. I think what it's really about is explained here in the article:
"A single toxic employee who is a bad fit for the existing culture can tank the morale and productivity of an entire team. "
So, is there really more to "culture fit" than the No Asshole Rule (1)? If not, can we start calling it what it is: "asshole rejection screening". Then maybe we can use the word "culture fit" less (maybe even "culture" less), because requiring new employees to "fit a culture" is pretty lacking in concrete justification.
Having been a mediator for many peer/co-worker conflicts, I've come to believe that "true" assholes (in the sense of someone who is fundamentally mean and entitled) are way more rare than people admit. On the other hand, it's not rare at all that a person can be considered an asshole by one group but work well in another. A large part of culture fit is about minimizing these personality conflicts.
Maybe, but cultures are relative. If a small subset of the population, 'assholes' prefer to work in an environment with other 'assholes' is it a bad thing that some companies nurture an 'asshole' culture? Provided nothing crosses the bounds of a federally protected class ofc.
Assholery is not just a question of preference. Generally, when we talk about assholes we talk about people who act unethically, lie, take advantage of others, steal whenever they get away with it and so on.
Yes it is bad to build next Enron or Theranos. And yes they will cross bounds of federally protected class, because in asshole culture people need to take advantage of others as much as possible - it is not optional. Taking advantage of protected class is easier then of other groups (in general) so they will.
If we are talking about asshole who are only arrogant or rude, then it matters only when you are loosing customers or cant hire and keep employes due to that (I have seen that happen).
You are conflating unethical behavior with unpleasant - two very different things. If it was unclear, I am explicitly referring to the latter, which again is highly relative. A company full of dog lovers with a pet friendly office would have a high 'asshole score' to someone who is allergic to dogs while at the same time being highly appealing to some. Accommodating 'poor culture fits' in this hypothetical company would ruin the appeal for many who work there, negatively impacting business metrics like employee retention/acquisition.
Legally speaking, wouldn't the guy with allergy be federally protected class here? He has medical reason not directly related to work for why the office is not suitable for him. It seems to fall into legal definition.
Also, dog lovers I know in real life are not assholes to people with allergies or fears. My experience is that most accept allergies as real medical issues and would seek solution.
I also think that you are using the word asshole to liberally as in meaning "anyone who annoyed me mildly". That is not how "asshole" or "asshole culture" terms are normally used. Why being unpleasant is part of being asshole typically, it is not the whole thing. Typically, there are very real negative externalities on top of just being unpleasant (for example other people wasting time dealing with asshole temper tamptrums, people no voicing objections due to them or having to tip toe around him or spending a lot of effort to work around that person peculiarities etc).
The most common point of conflict of this sort IME is "I prefer a quiet environment, people talking / listening to music around me disturbs my concentration" vs "I prefer to be around conversation / banter / music, a quiet environment makes me feel lonely, miserable and lethargic"
But it's not uncommon to label someone an asshole for being comfortable saying "That's a bad idea and it won't work; here's why..." rather than beating around the bush.
On the other hand, someone who is willing to "divert the project to advance some personal goals" all too often, will be very likable and sociable and not considered an asshole. There was a phrase at a company I used to work at "he doesn't need the project to succeed, he just needs it to not fail", and there were a lot of people who would drag a project on long enough to move up; really pleasant, friendly people... who didn't care who got hurt once they moved on to the next project.
> But it's not uncommon to label someone an asshole for being comfortable saying "That's a bad idea and it won't work; here's why..." rather than beating around the bush.
In my experience, that is rather uncommon. You may be ignored after saying that or not believed, but you get rarely labeled asshole for that alone. Frankly, in my experience, this is stereotype that people who are have hard time expressing themselves constructively and have trouble controlling anger after not getting their way like to throw around so that they sound better.
> On the other hand, someone who is willing to "divert the project to advance some personal goals" all too often, will be very likable and sociable and not considered an asshole. There was a phrase at a company I used to work at "he doesn't need the project to succeed, he just needs it to not fail", and there were a lot of people who would drag a project on long enough to move up; really pleasant, friendly people... who didn't care who got hurt once they moved on to the next project.
What counts as "too many"? Different groups have different needs when it comes to cohesiveness. It's up to company leadership to balance that requirement with openness/ease of hiring/etc.
Simply said, if only very rare kind of personality fits your needs and level of cohesiveness, then it is very likely that your culture would be more effective if it changed. Chances are, the culture is too ossified or otherwise unable to deal with changes, problems, differences of opinion or other exceptions from routine.
Different groups have different needs, but some of what groups call "need" is actually dysfunction.
I think it's unusual for a company to weed out a large percentage of the candidates due to cultural fit, but if they are, I agree there's probably a deeper issue at play. Where exactly that line of dysfunction falls is company/group dependent though.
Asshole is mainly just a word for someone who doesn't fit your culture though. Being direct is seen as being an asshole in some cultures and being indirect is seen as being an asshole in others.
Despite the vagueness of it, "culture fit" is making sure that you won't be considered an asshole by the existing team.
I'm on board with "asshole rejection screening" in place of "culture fit". Of course the flip-side of this is when a team of assholes rejects a non-asshole because they deem them incompatible, so perhaps we need to use the more general "asshole screening" for the sake of inclusiveness.
Recognizing cultural differences is important. Some cultures feel that being on time is vital to running a business properly. Other cultures see schedules as suggestions and not requirements. Imagine 50/50 split of these two cultures trying to agree on something as simple as when and how to run a weekly meeting?
I think at some places it starts off as the "no asshole rule", but then as you start hiring more people like the rest of the team, that will lead to actual discrimination. If you have a team of early 30 somethings, they may not want a young 20 something or an older 40 something on the team because, well, they're not like the other team members. And it's not always explicitly "we don't want 40 somethings". It is simply implicit in the way you hire. But implicit or explicit, it's still wrong.
I think someone can be toxic and tank morale and productivity for an entire team without being an asshole. E.g. a distrust of upper management bordering on paranoia.
Here's a concrete example: how does someone ask a peer to do something for them? There are a bunch of different ways this can be done, and only a small percentage of them fall into 'asshole' territory, but if you ask ten people to define the 'asshole boundary', you will get ten different responses.
50 year old programmer in the middle of an open office with 25 year olds bouncing balls around, playing loud music - bad culture fit.
Foreign middle aged man who can't speak the language very good in an environment where native language is important - not a good culture fit.
Female 25 year old in a group of 50 year old men who mostly wants to relax at work and are a bit awkward around young women - bad culture fit.
Very outspoken social person who enjoys partying in the middle of senior bank personalities who are extremely detail oriented and introverted - bad culture fit.
Just saying there is a lot of bad culture fits. It can be age, gender, race, personality and even appearance. Bad culture fit is everywhere. It's just not something we talk about very openly because it's not socially accepted. So we hide it under other reasons.
I think you're right that this happens in all the scenarios you mention.
But I'm certain the first and third example you've given aren't just "not socially accepted," they're actually illegal in the United States and many other places. The second one is questionable but may also be illegal, depending on whether the issue is actually English competency or just "he's foreign."
Only the fourth one, which is based on the person's behavior but not their membership in a protected class, is anything like what "culture fit" can or should legally be used for.
I agree with you that this kind of discrimination-by-another-name is status quo, but are you okay with it? If no, what do we do about it? If yes... why should I be?
> t's just not something we talk about very openly because it's not socially accepted.
It's not openly talked about because it's illegal. The next time a 50yo applies inform him that you're looking for someone under 40 and if you're lucky he'll hire a nice lawyer to explain it to you.
50 year old programmer in the middle of an open office with 25 year olds bouncing balls around, playing loud music - bad culture fit.
Really? I'm almost 50 and I'm in an office with a bunch of 20-somethings who like to yo-yo. Music is only on headphones, though.
Female 25 year old in a group of 50 year old men who mostly wants to relax at work and are a bit awkward around young women - bad culture fit.
That's very dependent on the particular people involved. I've been in plenty of contexts where 40 and 50-something men could relax with a 25 year old woman. (Traditional music.) In times past, such a circumstance was pretty normal. People have ways of creating temporary spaces, both exclusive and inclusive. Letting this happen in ways that are positive is how larger gatherings and groups of people are supposed to work. It's where we've mucked about with that, albeit sometimes with the best intentions, where dysfunctions have crept in.
That's actually a good point. If job discriptions had a short description of the team / company culture, it would weed out many non fitting candidates.
I found the Uber comments interesting. As someone on the other side of the table from Uber recruiting, I always figured a huge part of their hiring problem is that it was obvious from the early stages that Uber was run by and populated by a huge percentage of assholes, and people who had the sensitivity to understand that and the desire and choices available to avoid doing so would. Thus, the asshole primacy was maintained.
We joke a lot about that after I was hired as a middle aged coder...
during interview
Boss: "so do you think you can fit in this culture?"
Me: "You mean, do I wear skinny jeans and drink kale smoothies? Probably not, but if you want your work done, does culture fit matter when you have a mile long back log?"
Boss: "good point, so... How does your schedule look for next week?"
Often companies actually do care more about optics than productivity. I’ve definitely worked in large, successful companies where wearing the skinny jeans and drinking the smoothie are vastly more important than your productivity most of the time.
Another big, obvious manifestation of this is open-plan offices.
“Does working in a noisy, open space that doesn’t actually save significant money relative to engineer salaries and lost productivity matter when you have a mile long back log?”
Yes, as it turns out, displaying the optics of looking visually like a hip start-up stereotype does matter more than the mile long back log.
If you're the person getting stuff done, while others aren't relative to your output, you make others look bad which certainly doesn't help you 'fit in' with the culture.
I see that in start-ups. Their workforce must look "fresh" and "cool", "Instagram ready". This supposedly brings money apparently bored with life Angel investors love to burn. In those companies your product is a lifestyle for investors, what you are actually making is secondary. If someone is talented, it is a worst place to be in.
Over time, I've realize that this view of work/team dynamics is overly unsophisticated. People are all really unique and viewing them as simply work-accomplishing units misses a ton of the nuance in creating a successful team.
On one team I worked in, we hired an older coder with bad knees and a couple of kids at home. Everyone in the team got along with him and generally liked him and he got his work done without too much fuss. But it was obvious that he didn't fit in with everyone else. We'd all hang out with each other socially (bars, clubs, weekend activities) and he opted out of those activities entirely and went home to his family every day at 5pm. And we saw other teams doing all these cool team activities (canyoneering, zip-lining, ski trips, etc) while we were limited to activities that were less physical and involved less alcohol. Over time, almost everyone in the team looked for opportunities to transfer to other teams (and sometimes companies) that looked like they were having more fun. Eventually, the team's output suffered as turnover increased, until eventually, he ended up leaving. The net effect was hugely disruptive to the company.
I can absolutely appreciate the argument that these culture fit tests become a way to discriminate against minorities, genders and people of a different age...and that's absolutely wrong. But we also need to accept that employees don't view work as a 9-5 working sentence that's completely separate from their life outside of work. To the extent that employees want work to be part of their overall lives, you need to hire a cohesive group. It's a hard problem to solve simply because humans are social animals, there's no universally correct answer and so much of our psychology isn't well understood by so many of us.
Sounds like your problem is not the older gentleman with bad knees, its actually your company is more interested in skiing, zip lining, and drinking than it is in getting work done.
Work is for work, right?
If you create a "work culture" that defacto excludes protected class(es) (intentionally or not) without a legitimate business justification, you're breaking the law in the US. Sounds like this is what is happening, in this case the protected classes are age > 40 and disability status. You should take a break from the "canyoneering" and work on compliance.
It's also just bad business to limit yourself to hiring such a small subset of the population - people who are young, single, and bored enough to spend all their free time doing company activities.
I guess I’m an “older coder”, though my knees are doing OK, but never in my life would I have wanted to work at a place where there’s mandatory attendance at ski trips and zip-lining. That sounds utterly awful. Maybe you’re attributing something to age that is just a matter of taste? And maybe that’s not a good way to limit your hiring?
Nothing was mandatory and, in fact, the team leads purposefully organized events to be inclusive to everyone on the team. That was the whole point...by including an older, less-physically-capable team member, it was no longer an option to do fun, youth-oriented team events. And that person was excluded from work-related conversations that happened at after-work bar trips, which caused some awkwardness when the rest of the team aligned behind a significant decision and the excluded team member felt like he wasn't consulted. The team had a 20s-oriented culture and all but one team member participated. You can call it age discrimination, but he didn't fit the culture. And by trying to force him into the culture, with the best of intentions, the company lost the rest of the team to other positions/companies.
I guess what I'm saying is that many employees want their work to have a social component and will seek out employment that gives them that. So companies that don't include a culture fit criteria can risk alienating those employees. One would hope that a large enough company can use cultural fit as a sorting criteria more so than a filtering criteria. But the narrative that prevails here...cultural fit is just a code word for discrimination...feels too naive and lacking nuance. Human social interaction is complex and seeking to view workers as interchangeable cogs based on their capabilities to do work is much too simplistic. Which is not to say that cultural fit isn't an excuse to discriminate, which it often is. I'm only trying to point out that it's a really complex issue that has no universally correct side or answer. It's almost always situational and there's no blanket policy or rule that you can apply to address the issue. Trying to force companies to be culture-fit-blind causes its own set of problems.
And I say all this as a 40s coder, so I'm sure I'd miss out on a number of positions based on cultural fit.
>And that person was excluded from work-related conversations that happened at after-work bar trips, which caused some awkwardness when the rest of the team aligned behind a significant decision and the excluded team member felt like he wasn't consulted.
If not going creates a problem, it's mandatory, period.
Additionally, arranging your work discussions and decisions around alcohol consumption can absolutely be considered religions discrimination as many people don't consume alcohol for religious reasons and you certainly don't have any business justification for it. Also discrimination on pregnancy status.
I'm sorry but "some employees desire youth-oriented forced 'socialization' after work hours" is not a justification for breaking the law, it just isn't.
> Additionally, arranging your work discussions and decisions around alcohol consumption can absolutely be considered religions discrimination as many people don't consume alcohol for religious reasons and you certainly don't have any business justification for it. Also discrimination on pregnancy status.
What a bizarre claim. Your parent poster explicitly said they tried to organize group activities where everyone - including the old man with bad knees - could participate. Knowing this, it's safe to assume they didn't have pregnant employees (if they chose alcohol related activities while striving to include everyone).
> If not going creates a problem, it's mandatory, period.
Again, such a weird position to take. So, in your opinion, no after work events should ever take place unless every single employee is present at all times and during all discussions? After all, that's what you were referring to with that "problem": a worker who is not present at an after-work discussion, leading to a slightly awkward situation the next monday.
No decisions on work-specific matters should be taken on non-mandatory social events were some team members can't/don't want to attend. If you do it, fill the missing people in the next day, the same way someone was missing from an important meeting for whatever work-related reason.
Perhaps you could have had a variety of team (or wider company events) where not everybody needed to go to every one.
On a practical basis, more “all hands” (aka mandofun) events do need to be inclusive. In normal companies at least. This is usually considered alongside basic personnel stuff like catering for allergies and dietary preferences at shared meals.
In my experience most organisations don’t have huge problems with this although the mandatory fun often isn’t.
I also believe that major company/team decisions probably shouldn’t be made at bars but I get that not all companies are for everyone.
You’re repeatedly describing a workplace where people who don’t fit into a narrow set of non-work-related criteria are excluded from significant work decisions, then somehow not realizing that’s the textbook definition of a discriminatory work environment. It’s no different from making important work decisions in the men’s bathroom and saying you won’t hire women because they would feel “alienated”.
Feel free to hang out with your friends at bars, but don’t make them mandatory for work. This principle is not complicated.
The sort of organization you're aspiring to certainly has its merits, but it's not legal in the US in practice because it has the potential to cause discrimination in things like promotion on the basis of nonparticipation, and attempts to achieve it by filtering your hires for culture fit are explicitly, over-the-top illegal - well beyond 'awkward'.
Woe unto your career if you ever try to start a family, or get injured ziplining, or develop liver disease, or anything else that would keep you out of the good graces of mandatory-after-hours group events.
> Over time, almost everyone in the team looked for opportunities to transfer to other teams (and sometimes companies) that looked like they were having more fun.
To me that sounds like the team was pretty immature and ended up failing the team.
You can still do all of those things and work with people who don't.
Over time, almost everyone in the team looked for opportunities to transfer to other teams (and sometimes companies) that looked like they were having more fun.
You know, the actual work you have your people do (along with the monetary compensation, and of course the extent to which they're pleasant to work with, you know, while at work) really (really) ought to be sufficient motivation to show up in the morning and get stuff done, over the longer haul.
By the same token -- if you feel you not only absolutely need extracurricular activities (let lone that your people need to "all hang out with each other socially" at odd hours of the day and night) to hold the team together... but feel the need to point to a deficit in this area as the primary reason why your team does not succeed... then you're definitely missing this bigger picture.
Eventually, the team's output suffered as turnover increased, until eventually, he ended up leaving. The net effect was hugely disruptive to the company.
Indeed. It sounds like you lost a good employee (and many others like him that he could have potentially recruited into your company) for the sake of the (perceived) benefits of maintaining a certain monoculture -- predicated in turn on a certain stereotype of fun and "energetic" younger employees. And how wonderful everything can be when you only hire people who fit that particular mold.
Some people have real friends and don’t need to have pretend friends at work. Sounds like the guy you hired missed some red flags when accepting the job; hopefully he moved on to something better.
It's a shame the team didn't take the opportunity to learn from him, it's sounds like he knows far more about work-life balance than everyone else combined.
Perspectives change as we age, particularly if you decide to start a family. It's easy and fun to socialize with your coworkers when you're young and unburdened. After all, once you're out of school, where are your friends most likely to come from? Work, of course. I met my wife and some of my best friends at various jobs. When you're married with kids, you tend to want to spend as much time with them as you can. Spending all my time with work friends outside of work hours takes away from that family time. It's less about "I hate being here and only want to put in my 9 - 5" and more about engaging with my family and in activities that I'm more apt to like as each decade passes.
The thing to be mindful of, especially when you're in your twenties, is those things you love about your work environment today, you may not like when you're in your thirties, forties, etc. I remember vividly and fondly of partying with work friends until the bars closed every weekend (and weekdays, too), going zip-lining, playing games together, and so on. I wouldn't trade those memories for anything, but I also would never want to relive that again.
My point is, have fun, enjoy your youth, and make some good memories. But don't discriminate against others who just want to be professionals and do their job. One day it's very likely you will feel the same as they do...
I think it's quite wrong that this guy got basically penalized for just doing what he's paid for and getting along well with people. It's fine when teams get along so well that some people even spend their time with colleagues on the evenings and weekends, I do that too but please don't low-level force me to do it by applying social pressure.
The conversations involved me asking them to talk through the details of their interview process and decision-making. I think there were good incentives for companies be honest (given the context of us matching engineers with them). I did the classification into types of screening after, based on my notes.
I'm still unclear why you would think that people would openly discuss their prejudicial biases when discussing their interview processes and decision making.
The behaviour isn't socially desirable, has potentially serious consequences for disclosure ("The Triplebyte people won't work with us because I told them my interview process begins by throwing out all resumes with funny sounding names."), and assumes that the people involved are aware of their behaviour.
It’s still hard to know what this means. For example, all the senior engineers I currently work with are great at telling a story about how they look to hire based on talent, self-awareness, critical thinking, and many soft skills, and that the technical particulars are only incidental guideposts.
Then they proceed to ask candidates to derive a card shuffling algorithm on a whiteboard in 30 minutes and fail them from the interview if the running time complexity would be too high or if they can’t mathematically prove the result would be a uniform draw from the space of permutations of the cards.
Whatever story they tell you, it’s not about whether they are lying or not, it’s about the extreme myopia in tech where these people actually believe they are sleuthing out the inner talents and dispositions of candidates when they are obviously doing nothing but berating candidates with parochial, uninformative trivia.
I may be wrong, but it sounds like you're using hyperbole in two ways here: (a) you make a statement about all the senior engineers you know, and (b) that statement makes a rather extreme claim about how they evaluate candidates.
I think using hyperbole is a mistake in this conversation because we're interested specifically in how common and how intense these phenomena are.
(I don't mean to single you out. This thought has also occurred to me when reading other online discussions lately.)
It is sincerely not hyperbole. My company has 12 principal engineers including me, and in the meeting where we discuss interviewing and hiring, the anecdote I described above is literally the standard of discourse.
I can’t be certain that the same would have applied to all senior engineers in other companies where I previously worked. But I did interact with dozens of other senior engineers over the years and it’s a remarkably constant phenomenon.
It’s not surprising either. We all like to tell ourselves stories about how we embody the best ideals that a broader community espouses, even when the reality of our day to day behavior is different.
That is why I chose the term myopia. I think it’s a symptom of the tech world wishing to be associated with generally progressive human values, but that where the rubber meets the road, the implied values of tech orgs are no better or no more exemplary of positive human values than any other field of business.
I like your choice of the word myopia, because I think you've accurately captured one of the central problems in hiring. Rather than finding ways to accurately assess whether a person can do the job, grow in their career to benefit the future needs of the team and company, we instead look to more or less trick them using technical games and puzzles that generally have nothing to do with the work they will be doing.
> I think it’s a symptom of the tech world wishing to be associated with generally progressive human values
I'm having trouble parsing this part of your statement, but let me say that I think it is more a function of the personality types that get into software development and technology more broadly. Many of us are INTJ types (self included and yes I know that Myers-Briggs is bunk to many of you), and many of us have what was formerly called Aspbergers. In short, there are particular personality types that go into these fields, and those personality types fixate on details. So it isn't surprising that's how many then interview and expect their fellow team members to exhibit similar traits. Without going too far off tangent, I think this is often why this field is seen as combative towards women and non-white people, IE: it has less to do with a deliberate desire to exclude and more to do with the quirks of the people who enter this field.
It’s not surprising either. We all like to tell ourselves stories about how we embody the best ideals that a broader community espouses, even when the reality of our day to day behavior is different.
That sometimes starts with a smaller community that takes such ideals seriously. It almost always ends with a much larger group that spouts those ideals but acts differently.
the implied values of tech orgs are no better or no more exemplary of positive human values than any other field of business
It's long been said that the practice of "Software Engineering" is more a technology heavy application of business and less like engineering.
> Then they proceed to ask candidates to derive a card shuffling algorithm on a whiteboard in 30 minutes and fail them from the interview if the running time complexity would be too high or if they can’t mathematically prove the result would be a uniform draw from the space of permutations of the cards.
I'd actually expect a surprisingly large fraction of programmers to be able to do reasonably OK on that particular problem--and I don't mean just those with CS degrees. I'm including the ones that are entirely self taught. In fact, especially those.
That's because so many of us, even those with CS degrees or other common degrees that programmers get instead of CS [1], started out trying to write games or other things that needed to shuffle, were sure that the obvious approach we took was right, and then found out it wasn't and why. It was our first personal encounter with the idea that you can analyze and reason about algorithms and their correctness.
In other words, shuffling was one of the first algorithmic "aha!" moments for many of us, and you don't really forget those.
[1] Mine is math, not CS, for example. Partly that's because when I got my degree, in the early '80s at Caltech, Caltech did not have an undergraduate CS degree. The CS department only offered graduate degrees. They had all the necessary undergraduate coursework available--they just had not yet put together a formal degree program.
Yep. I encountered the problem of shuffling while writing QBASIC code as a teenager. I couldn't prove that random swapping wasn't uniform, in those days, but was able to come up with the uniform algorithm everybody uses now and feel comfortable with its correctness.
Granted, the interview question is pretty bad if it's just a test of if you've seen the problem already.
For those who haven't seen it, here is how you can show with a counting and divisibility argument that a common algorithm many come up with to shuffle is not a fair shuffle.
Here's the algorithm, in pseudo code (yes, with 1-based arrays!):
let a = [1, 2, 3, ...., N] # the items to shuffle
for i = 1 to N
j = random_in(1, N)
swap(a[i], a[j])
Imagine that random_in() makes a log of all its return values. In this program every time it is called it returns an integer >= 1 and <= N. It is called N times. Thus, the log consists of N integers with N possible values for each integer. In what follows we shall call such a log a trace of the program (because log could be confused for logarithm). (Trace has a meaning in linear algebra, but that should not cause a problem here).
That means that there are N^N distinct possible traces. Each of these traces is equally likely. We can associate with each of the traces a shuffle, namely the shuffle that results from the run of the program that produced that trace.
This gives us a list of N^N shuffles. This list will contain duplicates, because there are only N! distinct shuffles, and N! < N^N.
The shuffle is fair if and only if each possible shuffle occurs the same number of times in the list of N^N shuffles. For it to be even possible for that to happen, we must have N! divides N^N.
But if N > 2, that cannot happen. To show this note that if N! divides N^N, then every divisor of N! must divide N^N. Pick a prime P such that (1) p < N and (2) P does not divide N. Then p is a divisor of N! but is not a divisor of N^N, which shows that N! does not divide N^N, and so the shuffle is not fair.
Can we really always pick such a prime? Yes. If N is divisible by every prime p < N, then N-1 must be prime, but then N-1 is a prime < N that does not divide N.
Note that you cannot save this class of algorithm by doing more passes. Those just change the size of the trace from N^N to N^(kN) for some integer N. Nor can you save it by changing it to pick both indices at random for the swap instead of picking only one at random. That just changes N^N to (N^2)^N = N^(2N). As long as the random number generator is always asked for a number in {1, 2, ..., N} and it is called the same number of times every time the program is run, the trace size is going to be a power of N, and cannot be divide evenly by N!
Now we can see why Fisher-Yates might work. It asks for a random number up to N the first iteration, up to N-1 the second iteration, and so on. That means its trace is N! long. There is no problem dividing N! by N!. Since N!/N! = 1, if we can show that each shuffle is included, that will also show that each is included the same number of times, and hence that Fisher-Yates is fair.
All we have to do now to see that Fisher-Yates is fair is show that each shuffle can be produced by it. Given a desired shuffle, it is easy to construct the trace that results in it, and we are done.
I just thought of it this way: You're implementing "n P n" which just reduces to n factorial. So you just have to show that your 1st iteration is choosing from n items, your 2nd iteration is choosing from (n - 1) items, ... the (n - 1)th iteration is choosing from 2 items. (Choosing from 1 item is a noop, of course.)
All we have to do now to see that Fisher-Yates is fair is show that each shuffle can be produced by it. Given a desired shuffle, it is easy to construct the trace that results in it, and we are done.
You mean: Given a desired shuffle, you show you can construct the only trace that results in it.
> Can we really always pick such a prime? Yes. If N is divisible by every prime p < N, then N-1 must be prime, but then N-1 is a prime < N that does not divide N.
We don't actually need a prime. We just need something that divides N! but does not divide N. N-1 will do nicely.
It possibly depends when you started programming. When I was making those kind of games and such things my environment had a built in shuffle call that worked fine...
Then they proceed to ask candidates to derive a card shuffling algorithm on a whiteboard in 30 minutes and fail them from the interview if the running time complexity would be too high or if they can’t mathematically prove the result would be a uniform draw from the space of permutations of the cards.
For a company that runs an online game server, let's say, this really isn't that high a bar.
I know off the top of my head that there's some edge case that can keep you from getting an even distribution, but otherwise 1st year probability and 1st year algorithms knowledge should be enough for that. The proof is a slow-ball and the algorithmic complexity is a slow-ball in your example.
it’s about the extreme myopia in tech where these people actually believe they are sleuthing out the inner talents and dispositions of candidates when they are obviously doing nothing but berating candidates with parochial, uninformative trivia.
Or, it could be about weeding out students who got by with nothing more than gluing libraries together and really only thought of degree work as a formality while they were busy networking.
The problem space for computer science algorithms is gigantic and many of these companies testing for this knowledge then immediately throw new engineers onto line of business CRUD apps and bug fixes, which rarely have the engineer implementing any of these algorithms from scratch.
Unless you have a super targeted problem space that interviewing employees know about, then you are doing about as well as drawing a random problem from a hat.
Most developers I know just brush on as many algorithms as they can remember when they are going to interview for a new job. Then they just go through interviews until they find a company that manages to pick an algorithm out of the ones they memorized. This is a giant waste of effort to create a system that is effectively a lottery if you can get past the, admittedly large, bump of being able to understand any comp sci algorithms
The problem space for computer science algorithms is gigantic and many of these companies testing for this knowledge then immediately throw new engineers onto line of business CRUD apps and bug fixes, which rarely have the engineer implementing any of these algorithms from scratch.
A programmer worth his salt should retain enough 1st principles knowledge to not create a O(n^3) bottleneck in production or otherwise stay out of trouble.
Unless you have a super targeted problem space that interviewing employees know about
Often the specific skills are mentioned up front. It doesn't have to be that targeted, either.
Most developers I know just brush on as many algorithms as they can remember when they are going to interview for a new job. Then they just go through interviews until they find a company that manages to pick an algorithm out of the ones they memorized.
This speaks more to bad interviewing. It certainly does not mean that such knowledge being worthless and arbitrary. What you want in a candidate, generally speaking, is someone who can actually apply knowledge. What you are describing above is just regurgitation.
I agree it speaks to bad interviewing, because these whiteboard interviews are a bad interview practice. Yea knowing how to not acciddentally get an O(n^3) bottleneck is table stakes for development. What we get however is you interviewing for a job to make data entry apps and they ask you to implement a variety offlood fill algorithms with modifications that force edge cases unless you work around it. Or you'll be maintaining a legacy application and then they ask you to work out a Month Carlo simulation on the board. Then on top of this, despite what interviewers say out loud, they almost always start looking at edge cases and if the interviewee does not work there way around them they are dinged for points compared to an interviewee who does deal with the edge cases.
The majority of development work does not have you working through every comp sci algorithm in existence on a frequent enough schedule that the average engineer, or even a great engineer, will remember them all. That is going to garuntees that interviews are a game of chance. The more algorithms and the trick question associated with them that you can memorize the greater your odds, but it's still down to luck of the draw for what questions you are asked.
If you're looking for devs to show that they understand the ideas, you'd be better off telling them the problem space ahead of time so that they can prepare for it, and then deeply questioning their knowledge in that space
Yea knowing how to not acciddentally get an O(n^3) bottleneck is table stakes for development.
It seems to me that a lot of younger folks want to lower the bar below that.
If you're looking for devs to show that they understand the ideas, you'd be better off telling them the problem space ahead of time so that they can prepare for it, and then deeply questioning their knowledge in that space
Perhaps combine that with a related but novel question.
The only way to tell if someone can do the job is to look at their past accomplishments through a web of trust with other engineers, or by having them do the other job.
Both of these routes put more risk on employers so they'd rather filter out the majority of people based on an inaccurate test, then throw their hands up and say there are no developers.
The whole country has at will employment and companies certainly aren't voluntarily signing any employment contract. Just fire someone if they turn out to be incompetent/fraud.
We're not looking for creativity in our interview. It's more about evidence that you've had plenty of practice designing, implementing, and debugging actual running systems, in greater depth than just gluing libraries together and following online tutorials and guides.
Yes, and regurgitation is what tech interviews these days optimize for in selecting candidates. Regurgitation is not simply repeating the technical components verbatim, by the way. It includes rote rehearsal of a believable way to present (i.e. fake) working it out from scratch.
Hell, if an interviewee understands enough to be able to convincingly fake working things out, they're already way ahead of a lot of other candidates. I've seen people faking such things badly. In general, they can spout off about the "happy path," but they can't tell you how the implementation can go wrong and what to do about it.
When I was a grad student TA, I told people not to cheat. If you don't know enough to answer the questions, you don't have enough knowledge to cheat. That turned out to be quite true.
I think you might be underestimating how big the "interview prep" industry is or how it works. The people "faking" it in this way likely actually know much less than someone who honestly struggles to come up with a poorly performing brute force solution and they practice the soft skills necessary to prevent the interview from ever getting to the point where you're asking questions about where the implementation can go wrong that aren't also on their script.
The people "faking" it in this way likely actually know much less than someone who honestly struggles to come up with a poorly performing brute force solution
My office scores the people with the brute force solution higher than the others, so long as they know the time/space complexity.
they practice the soft skills necessary to prevent the interview from ever getting to the point where you're asking questions about where the implementation can go wrong that aren't also on their script
Oh yeah. That sounds familiar. Not getting to the part where they can answer questions about where the implementation can go wrong counts against them.
In that sentence, I was talking generally about people debugging CRUD apps, not about the specific example. You will note that the parent comment to mine is talking in general terms, not about the example.
Even a seasoned expert who literally writes card shuffling software would have a difficult time writing a well-explained solution on a whiteboard in 30 minutes.
Most candidates we interview have a combination of CS degrees, statistics degrees or experience, and are prepped ahead of time with some materials about the general type of question we might ask, and around 90% of them are rejected for failing to solve this question. Around 50% are given extremely poor ratings, like not even getting any type of coherent solution, even inefficient and not handling corner cases.
This is what I mean about myopia.
30 minutes is barely enough time for anyone to sketch a solution to any algorithmic problem, even if they are experienced and fully comfortable with the question’s subject matter.
This process just filters out candidates who are perfectly capable of solving the problem as a form of severe risk aversion against possibly hiring someone who lacks sufficient technical skills.
Even a seasoned expert who literally writes card shuffling software would have a difficult time writing a well-explained solution on a whiteboard in 30 minutes.
Sure. We used to give an hour, and HR reduced it to 45 minutes. I'd rather have more time. Also, you can dial up the stringency of this particular question to an expert level where hours could be used. Or, as you admit below, it can be dialed down considerably.
Around 50% are given extremely poor ratings, like not even getting any type of coherent solution, even inefficient and not handling corner cases.
You could also dial it back to where you accept a coherent, inefficient solution that at least shows an awareness of corner cases.
This process just filters out candidates who are perfectly capable of solving the problem as a form of severe risk aversion against possibly hiring someone who lacks sufficient technical skills.
So "myopia" in your view is the delusion that such a practice is anything more than that? There are plenty of people in our industry who know that's what it's really for and who know how bad whiteboard interviews are at this task. That doesn't mean the goal is worthless. It seems that many want the goalposts lowered, such that actually understanding anything isn't required anymore.
We know the test is bad and that something better should be developed. What I'm arguing against is lowering the standards and getting rid of the test altogether.
You should at least know the basics and be able to apply them. I'm rather shocked by the number of 3.75, 4.0 students from good schools who can spout 1st principles, then utterly fail at applying them.
I think you guys might be talking past each other a bit. A good candidate should be able to O(n log n) time pretty easily, but getting O(n) off the bat would suggest prior knowledge of the problem.
If someone is going to be so prompt and complete at forgetting everything, then they may not have a tickling awareness that something might be up when the occasion to apply 1st principles knowledge does arise. Seriously, if the algorithmic complexity of a shuffling algorithm is going to be a challenge, why even have a degree!? If someone is so good with the forgetting that they can't even apply "n choose m," just what are people paying tens of thousands of dollars a year to learn in college?
The stuff you use all the time in your job is largely arbitrary trivia. However, the knowledge referred to in the example given above are first principles. So your standards fall below the level of being able to apply first principles? I can see why people would want to weed people like that out.
>algorithmic complexity of a shuffling algorithm is going to be a challenge, why even have a degree!?
Because complexity analysis is a tiny part of a CS degree. A huge wing of our CS grad department focused on type theory and PL in general and could easily screw up a complexity analysis quiz like that because it's irrelevant to their day-to-day research/work.
Because complexity analysis is a tiny part of a CS degree
Yes, but it's a slow-ball pitch! What's the complexity of filling in an array with its indices? If a CS grad can't solve something just a little more complex than that (for a sloppy/easy version of the question, not the shuffling algorithm expert version) then just what the heck are they learning?
You assume the candidate has done a CS degree. I would be quite capable of looking up the algorithmic complexity of an algorithm choosing the correct algorithm (or data structure) accordingly if the need came up in my job (which it does now and then). But I don't know it off the top of my head, because I never did a CS degree, and frankly it's knowledge that's not very useful to memorise because it is very easy to google.
But I don't know it off the top of my head, because I never did a CS degree, and frankly it's knowledge that's not very useful to memorise because it is very easy to google.
If the confluence of 2 or 3 requests you were implementing were to cause a nasty O(n^2) or O(n^3) time or space workload, would you have a good chance of realizing it? If your answer is yes, then you'd have what I'd be looking for. If your answer is that you'd figure it out after the fact, after the problem reports came, by Googling, then you would cause a problem and require an additional spate of diagnosing and patching that a better trained programmer would not have.
Everyone says they only hire on merit, and then you double-blind their recruitment process and you see how different the sucessful candidates are from the previous process.
Also a big factor here is a team that would receive the new hire. Hiring managers may not exactly be people readers to knowingly identify a 'culture' or what makes this particular team stable/ performing. Skillset is one thing, yet the team dynamics is another.
For example, a stable team needs both extroverts and introverts, the ratio is not exactly fixed. Yet matching an extrovert to dominantly extroverted team may not be the best choice. How much one can tell at the first impression? Are we back to the era of personality tests at the interview?
I'm pretty suspicious about most conversations about culture fit: I think they are more smoke than fire.
Especially in technology, where it's a seller's market for labor I don't think a lot of companies are actually screening on this criterion. Do they think you are smart and can do the work? Then companies are going to want to hire you with the possible exception of if they think you are a huge asshole or complete weirdo.
I don't think anyone cares all that much beyond that.
>It's shorthand for "I think they could probably do the work, but I don't think that I/we could actually stand working with this particular candidate".
Agreed, but in my experience, "don't think we could stand working with this candidate" is much more than talking about assholes/weirdos. It's also the catch-all for things like "our team likes to go out to bars and clubs all the time, and you don't seem like you enjoy going out", or "we tell raunchy jokes at work and you seem like you would be offended by it and make us stop", or even "you seem like you're on the opposite side of the political spectrum than we are so we think we wouldn't want to work with you".
Hell, I've even seen teams at a consulting company (and seen HR defend such teams) reject candidates for being vegetarian, because the team thinks that there wouldn't be "culture fit" since the team likes going out for burgers and steak every week.
I’m glad at least someone can use specific examples. These are the kinds of reasons that come to mind when explaining what a “cultural fit” rejection is about. It’s not that the candidate is an asshole or toxic. It’s that he’s not enough like the interviewers.
I once had in interviewer ask me what I thought about going to football games as team building events (this was not a job that had anything to do with sports). I knew where that job opportunity was going...
In my experience, it seems to be 'is this person cool or not, given what I think is cool?' or 'does he have the same political inclinations as I do?'
WeWork has banned meat from their meals - you can't even submit an invoice for a meal containing meat. This is not so obvious discrimination for the 'type of person' they want at the company; 'Veganism' is pretty strongly correlated with a bunch of values, including political.
'Cultural fit' is a very slippery slope and though I guess WeWork has the right to make such assertions ... I think it's unfair and wrong. I could easily live with that kind of rule, but I just wouldn't want to work for a company that had such a rule.
Or on the flip side you interview with numerous people and some how manage to rub one of the ten the wrong way...or hell maybe that one individual got cut off on the way to work and is in a bad mood.
Do they think you are smart and can do the work? Then companies are going to want to hire you with the possible exception of if they think you are a huge asshole or complete weirdo.
"Culture fit" is the justification for who they see as problematic, starting a bit short of being a "huge asshole or complete weirdo."
I don't think anyone cares all that much beyond that.
We know that such companies can be suffused with groupthink, to the point of mass hysteria and virulent hate. It's documented in public at this point.
Outside of "exhibits basic social grace and custom", culture to me is:
* Diversity of thought and multidisciplinary approach to problem solving
* How you view teams, how you would organize a team you were going to be part of, what makes a good team
* How you handle failure, defeat, and disappointment
* How you handle difficult people and situations
* Your communication style, especially for bad news
* How you convince others to change
* Your view on work life balance
* Your attitude towards management and leadership styles
* Your appetite for risk and entrepreneurship
* Your dispute resolution tactics
There may be others... In any case you can address most of these for senior hires with simple SBO questioning.
For juniors you're probably best off just focusing on communication skills, working in teams, and challenging situations or failures.
Good culture fit is when we ask an employee to do something and they do it. A bad fit is someone who occasionally says no. A toxic employee occasionally says no and explains why they won't.
No. Sometimes you must say no. No is important. Explaining why no is the answer isn't toxic, it's usually necessary, because otherwise you're saying: No, because I said so, which is toxic.
Why do you consider it bad to say no? Do you not expect your employees to exhibit independent thought and act professionally? If someone was asked to do something which was seriously wrong, wouldn't you want them to call it out rather than be a yes man and silently let something bad happen? If they explain exactly what's wrong and why, isn't that simply being professional? Or do you just want obedient slaves?
From the perspective of a dev: why should I be anything less than a yes-man, on topics where the decision authority clearly isn't mine?
The ACM Code of Ethics has no teeth, meaning CS isn't a profession; and even if the decision in question is so thoroughly self-destructive that the company goes under, there's plenty more companies to work-for in that case.
If it absolutely is something that they're qualified to make decisions regarding maybe. Oftentimes the people handling the day to day operations of a company, aren't qualified to make certain specific decisions.
Just letting your boss or colleague do whatever he/she wants is a terrible idea. Be polite, reasonable, and willing to accept defeat, even when you're in the right; but don't be a yes man. And for what reason? The authority isn't your's? Authority shouldn't be blindly followed. Authority means you make a final decision when consensus isn't reachable, not that you're beyond reproach.
I have no clue where you're coming from with that last statement. Because a code of ethics "with teeth" doesn't exist, we shouldn't adhere to one? That we have no responsibility to look after the best interests of the company, shareholders, and community? Everyone bears that responsibility. You're claiming CS isn't a profession, because there doesn't exist a board, bar, or licenses? It's just an unregulated profession.
> I have no clue where you're coming from with that last statement. Because a code of ethics "with teeth" doesn't exist, we shouldn't adhere to one?
"I shouldn't do X" logically follows from the conjunction of "I needn't do X" and "doing X has a lesser expected-value than not doing X".
> Everyone bears that responsibility. You're claiming CS isn't a profession, because there doesn't exist a board, bar, or licenses? It's just an unregulated profession.
An unregulated profession is no profession at all. That kind of holistic, broad-minded responsibility is levied nigh-solely by professional regulation and decision-authority.
(I say "nigh" only because there's probably some extraordinary and ridiculous circumstance that doesn't come to mind right now.)
CS not being a profession doesn't preclude acting professionally.
As for why you shouldn't be a yes-man. I am an individual, I'm educated, skilled, and have two decades of experience and what I consider to be generally good judgement. I always attempt to give of my best and to do what is right for the best interest of the project and company/organisation. If that means pointing out facts which are wrong, ill-considered or counter to any prevailing group-think, I would do so every time. It might not always make me popular, and it might ruffle a few feathers, but to ignore problems and evade responsibility by silently going with the dictates of those above me or in the group would be a disservice to the project, the wider organisation and to myself. I refuse to be a spineless jellyfish merely to make life slightly easier for myself in the short term. I'd rather go home each day satisfied that I did the best I could despite the circumstances, than leave knowing I did mediocre or downright awful work when I could have done better.
Maybe I wouldn't be a good cultural fit in some places. But everyone in an organisation bears some level of individual responsibility, and I personally would prefer to work with people who can shoulder it, and show they care about their work by arguing their case well, rather than abrogating it and showing that they don't really care at all about what they do so long as they get paid. In my experience the output of the latter is typically mediocre at best, because they don't give a damn.
dear young people who are reading the above comment.
IMHO dont be afraid to take it with a grain of salt. don't expect to be rewarded for saying no. don't expect a light feather ruffling. don't expect light consequences. be prepared to get fired. be prepared to get demoted. be prepared to lose your health insurance. be prepared to change your industry. be prepared for the realities that most people face.
if you say no to something that really is important, then there will, the vast majority of the time, be major consequences. dont expect it to be easy. dont expect a reward. dont expect anyone to even understand or care why you are doing it. dont expect to be respected. dont expect anything. be prepared.
when you are living in poverty or are homeless, that no wont really mean much. only say no when you have the ground to stand on that can catch you when the inevitable smack in the face comes.
and dont feel ashamed if you have to say yes to survive once in a while. its actually what most people do. every day. even people you respect as heroes. sometimes especially the people you respect as heroes. when a really big no comes, there will be many people chanting it together, and many others behind them silently backing them up, all of whom had to say yes, in ways large and small, at some time or another, in the past, just to survive long enough to be together in that space, building that critical mass, and supporting each other.
Maybe if you work in the Land of the Free™ and live in constant fear of getting fired for some inconsequential reason, you have to have to abase yourself daily to your manager and act like a wage slave supplicant. Is that a life anyone can really be satisfied with, deliberately allowing oneself to be downtrodden for the sake of a few shekels?
Do you have a job where you simply do as you are told, like a private being shouted at by a drill sergeant, or do you have a career where your expertise and contributions have some significant value?
Work is full of compromises. No matter how hard you try, at some point you're going to end up giving advice or information to people which runs counter to what they would have preferred to hear. "No" is rather absolute. What would be more typical is suggesting that a course of action might be unwise, and suggesting possible alternatives along with the tradeoffs for each approach, i.e. criticise but in a constructive way. And let others decide which pros and cons are most important. You bring specific expertise and insight, and provide that to the group and decision makers, along with qualified recommendations, maybe very strong recommendations if the situation warranted it. Your recommendations and advice might well be ignored, but it's still important to make them in the first place so that they are at least known and considered.
You don't just live your life to satisfy your boss. You also have to live with yourself. Sometimes, for example, companies make very short-term decisions at the expense of their own longer-term viability and at the expense of their existing customers. Who internally acts as the voice of those customers and the future company if not you? If you didn't at least raise questionable design tradeoffs so that the consequences were well understood and informed decisions could be made, you are doing your employer a disservice (in my opinion). It doesn't matter what the ultimate decision is, but that you act professionally and provide all the necessary information for others to work with. If you get fired for trying to do your best for the company, you're well out of a bad company.
This point about ethics was so important, I thought I'd follow up with a more detailed example.
In a previous position (well over a decade ago, for a company which no longer exists), I was asked by my boss to do something which was both unethical and possibly illegal. Loyalty to your company and wanting to keep your job is one thing, but we all have lines we are unwilling to cross, and this crossed one of mine. I considered my position, and refused to have anything to do with it; I did not want to be remotely associated or culpable to any degree. In the meantime, I considered my future, and decided that I couldn't in good conscience continue to work for the company. I made my plans for the future, secured them, and I handed in my notice a short number of weeks later.
We all have a duty and personal choice to conduct ourselves ethically, even if that means taking it on the chin and finding another job. To ignore it is to implicitly condone it and the increase of suffering and evil in the world as a consequence. I do wonder how the subset of the employees of Uber, Facebook, Google etc. who are knowingly engaged in unethical and/or illegal work justify it to themselves.
My theory is hire smart professionals, then treat them like they're smart and professional.
They should be expected to have an opinion and allowed to express it. If you don't want any of your ideas challenged ever, then don't waste your money hiring a person with a brain. And if you hire someone with 10 years of experience, hopefully you can appreciate that they've learned something in that time that give them a perspective you want to hear.
But, of course, after they've respectfully disagreed, they should also be ready to set aside their opinion and go along with whatever was decided. That comes with the professional part of smart and professional.
Being meek and obedient is part of working for someone else when you have no choice. If you can get a comparable job in a short time, then it's the employers who start needing to be more meek
That's exactly the reason why the culture fit is not clearly defined in companies.
Any newcomer brings a potential challenge to status quo. The 'culture' is in fact may be quite the opposite to the proclaimed values. This may not be visible(any longer) to those that 'fit', yet may be quite apparent to someone new. Hiring manager may not even realize what 'culture' has been fostered.
Team dynamics is a tricky thing. I doubt that any team would scout on purpose for assholes, yet many stable teams may keep one/some. Same at the other end. As long as the rotation is not high, the mix is the 'culture'.
That's why 'culture fit' is often invoked as a guise for something else short of discriminating answer.
An interesting point that I ended up cutting from the blog post is that companies also use culture as a selling point to convince candidates to join. We have seen this work (convince a candidate to take an offer). However, most companies underestimate how similar their culture pitch is to other pitches candidates hear. I think these pitches are less effective than most companies think they are.
I was at a talk by Emily Chang about her new book Brotopia, and she raised a really good question: why frame it in terms of culture fit, as if culture is something pristine to be preserved? Why not think of it as culture addition, that is, in terms of trying to assess how much one can bring to the table?
If a person can add to a culture, then a person could also subtract from a culture. Getting the wrong people on the bus can be very damaging to a company. This is not to say that companies always do a good job at selecting people for addition rather than subtraction.
Any place that could be deemed a "brotopia" is likely bad at building positive culture--I know I wouldn't want to work there. But still, different people will have different effects, some of them being net positive and others net negative. And what counts as positive or negative will vary a bit from org to org. If you can call culture fit a "culture addition", a lack of culture fit may be a case of "culture subtraction".
Totally agree. However, I will say anecdotally as a people manager that great additions to a team tend to bring new ideas and perspectives while simultaneously having something (values, perspectives, etc.) that anchors them to the existing group. If somebody deviates too far from the existing team it tends to cross a threshold from productive disruption to toxic conflict.
I kind of think of this in the context of material properties and teams having their own stiffness and strength. The higher the strength, the harder it is for imposed forces (i.e. challenging new perspectives and personalities) to cause team failure. The higher the stiffness, the more resistant to changing form under imposed forces. I assume high strength is universally preferred, but stiffness is a little more complicated; a high stiffness team ensures consistency but is difficult to alter and improve upon, whereas low stiffness enhances your ability to reshape and broaden team culture but also leaves it more sensitive to changes.
I think because when we think about culture fit, what people can add is already in the equation. When a culture fit is used to DQ someone it’s because on balance they subtracted more than they added relative to other candidates.
Or, at least, the interviewers perceived that that would be the case. Perception might be out of phase with reality there -- members of sub-optimal cultures don't necessarily realize they have a problem.
(Then, I suppose, there's the further question of whether it's even possible to add to a culture that doesn't want to be added to.)
I think that's only a post hoc rationalization -- the point being that culture "fit" is also very easy to hide behind for people who are attempting to preserve a perceived consistency.
Obviously all of these are just mental abstractions, but I contend that one is easier to think about as someone who cares about diversity.
To me the whole culture fit is a circus and there to make people believe they are being virtuous, etc. It’s BS.
That said, there is some value in sharing some important core principles.
However, to me either someone can execute their responsibilities, or they can’t—but it’s dufficult to infer that from a pre-work interview.
As it is non conforming cultural fit might be someone who doesn’t drink like a fish, or someone who needs to take care of family obligations after working hours, for example.
Because you don't add to a team which is highly dynamic by adding a person who expects a straightforward top-down decision-making process, and the same is the case in the reverse situation. This is not about pristine or not, but simply about the average.
You do add to a team of programmers by adding a marketing person, salesperson, technical support or test person.
In my experience "Candidate X isn't a good cultural fit" has almost always been used as short had for either "I don't want us to hire them, but I can't articulate why in
way I am comfortable with" or less often "What an asshole".
I don't think I've ever been part of a conversation about "cultural fit" that wasn't swimming in bullshit, or at least wading in it.
A big classifier I've seen that gets put under "cultural fit" is the "it's not my job" problem. A startup can't have people saying that, but big enterprise companies live by it. Some people just can't transition from one to the other.
I've found in interviews that some people expect to do exactly what their credentials have prepared them for. At least for the places I've worked, that's insufficient for programming and other tech.
My first job involving any real technical work was as a PC repair technician in a small independent store. One day the owner told one of the other technicians to empty the garbage can because it was overflowing and everyone else was busy. The other tech refused and went on some bullshit rant about how he was a computer technician, not a garbageman. That made a real impression on me and since then I've tried to pitch in and do whatever needs doing regardless of whether it's in my explicit job description or not.
"Not my job" may be due to dysfunctional team dynamics, where team-members are not empowered enough to feel secure about their areas of responsibility.
Basically, a situation when the areas are guarded (via seniority, permissions, available info), yet the performance or interest is no longer there. This way the responsibilities are fuzzy on purpose. "A team-player doesn't say No... - if not you, then who?!"
Ideally, a collaboraive team should not restrict the information flow, yet that's how the hierarchy works. The Boss knows, the minions infer.
Do you mean that the candidate is too inclined to say "that's not my job" when they might be called upon to perform tasks that lie outside their narrow area of focus?
I'm not slamming someone for saying that. At a huge company they will be exactly right and may fit in great there. If they can't change that opinion when working at a startup, maybe they aren't the best employee #7.
"I like to work on a team with strictly defined roles."
"I like to know exactly what I'm working on from day to day."
"I prefer to have my worked planned out weeks/months/years in advance."
All three valid, but not necessarily great for a startup.
For what it's worth, I would enthusiastically agree with all three of those statements, and I have no desire to ever work at a startup. I did once, years ago, and I hated it. Never again.
I'd prefer to work for the most enterprisey company that ever enterprised. I'm pretty happy at the B2B telecom where I work now, even.
(And, yes, I'm agreeing with you and providing a data point in your favor.)
On a handful of occasions, I've said "yes" to hiring somebody, despite having a nagging doubt about them, because they seemed to have the requisite technical experience and interviewed OK, and I didn't feel I could justify saying "no" on the basis of an intuition.
In almost every case, they've ended up later either demonstrating some unprofessional behavior, like having an abusive temper, or been revealed to be incompetent in some aspect of the job. And yet, I still wouldn't feel comfortable turning somebody down purely based on a gut feeling. It's made me pretty uncomfortable about participating in hiring process at all.
At one shop, I think it was more of a question of, "Will this person work 70 hours a week as salary exempt."
If you have a toxic manager asking these questions, you get employees who will work long hours to fix bad planning decisions. If that manager makes the wrong call, they get an employee who refuses to week over 45 hours a week and they are usually let go so other people don't get the same idea.
> "Candidate X isn't a good cultural fit" has almost always been used as short had for either "I don't want us to hire them, but I can't articulate why in way I am comfortable with"
Either that or "I don't want us to hire them, but I can't say why because it would be against the law." "Culture fit" has mostly become a loophole for anti-discrimination laws.
Well, the whole 3rd paragraph of the article is talking about how a poorly implemented culture fit criterion can be a place for bias to hide. I would assume that that was meant to mean all kinds of bias, not just bias that has nothing to do with any protected classes.
The survey itself was all qualitative, self-reported data. People aren't typically aware of their own racial, gender, etc. biases, so one wouldn't expect to see that being something they up and volunteer in their responses even if it is a factor in how their "culture fit" screen works out in practice.
There is no untainted data in the subject. Any company that finds itself systemically rejecting protected classes of people through the "culture fit" label is asking for a lawsuit if they made it known to anyone.
This is generally a problem with discrimination cases, it is extremely rare to find a real "smoking gun", usually it's just the end result that looks abnormal
That's a very uncharitable assumption. At a previous company, where I was involved in the hiring process, 'culture fit' almost always was either shorthand for perceived work ethic or lack of ambition. We were primarily concerned with two things: where are you now in your abilities, and where do you aspire to be in your career?
You don't need "culture fit" as an excuse to not hire someone you don't want to. If a hiring manager has an illegal bias, there are plenty of ways to avoid hiring a particular candidate.
I think that hiring for culture fit is not the hardest thing to do - it's no different from hiring for technical skills. It just requires that you have some background in psychology so that you can easily spot someone who is lying.
Of course, it doesn't mean that you need to have a master degree in psychology. You can learn, and here experience and gut feelings play a very important role, although as someone has said, there are interesting questions you can ask to tell the Rockstar from the team player. So yes, you can use normal questions plus gut feelings.
For me more important than hiring the right people is how to retain the good ones and prevent assholes to prevail and destroy the nice atmosphere at work.
Prevention is nothing if you don't act when the problem occurs. And eventually it will.
I can't believe that companies like Amazon or Google with > 100000 employees only hire great people culturally fit. We are animals, and when put together there is always someone that wants to prevail. And there is always the culturally unfit that somehow sneaks in. The difference is how you tackle that. I have seen and been in companies where the action was literally doing nothing. You have to change to behave in a different way towards the asshole, in order to make your life easier. That's the answer. Lots of "Let's hire for good fit", but no "how to deal with aholes at work that disrupt your work environment".
Ps. People should read the "no as*hole rule" book. A first good resource on how to deal with such people.
Culture fit is a euphemism for shared values, and those are a mix of where strategy meets background.
Trouble I have seen is that companies don't talk about those two things because they truly are the value proposition of the firm. Often this is not precisely clear.
The real strategy of a company is necessarily hidden, but the direction it yields is something people can align to, knowingly or more often, not.
Is the strategy to get acquired for IP or because they were positioned to execute in a growth market, or maybe to create or dominate a market? These are radically different, but you can tell by looking at a cap table and an office what their plan is.
Do they need people to not ask questions, or do they need compelling visionaries? Maybe they need people to keep the ball in the air, engineers to optimize and scale big ideas, or new blood in an ossified institution. Those strategic outcomes define culture.
When I hear people say, "culture eats strategy for breakfast," I always think, "yeah, without strategy, culture starves." As you can tell I'm a real hit at off sites.
Amazon stands out among the tech giants with the most distinctive behavioral values (LPs*). They are used for both recruiting, decision making and career advancements. Amazon provides a strong counter example to the thesis of this article.
My mind is still puzzled by this discussion and I will think deeply about it. But regarding your question: Yes, why not? I learned it the hard way that sometimes some kind of sentiment is good. :-)
Huh. I reserve "culture fit" to mean "did the candidate make racist, sexist, or ageist remarks (or other such similar remarks about something absolutely unrelated to actual engineering)?"
I've yet to not hire someone under this. (Though I have one person who I would not hire today, but I still do not know how I would have screened for them in the interview.)
Seems like I'm the only one, though. The rest of the comments seem to indicate looking for something deeper.
The phrase "Culture Fit" has many shades and hues. Generally, the hiring manager and his/her team would take a call on "cultural aspect", which in principle should be a fair representation of the company culture. But on many occasions that may not be case. If a manager has a bias and certain prejudicial views, it becomes culture of the team/group. In that case, a "culture fit" aspect of interview is meaningless.
In my experience, "Culture fit" has always been the cover for "toxic" workplaces where sexism, bullying and worse run rampant.
If everyone acts professional then chances are you'll figure out how to work together. If you're unable to act professional then chances are the new hire isn't the problem, you are.
The candidate can also be toxic and unprofessional, this is a two-way street. What if the company doesn't want to bring "sexism, bullying and worse" into the group?
then wouldn't we would be able to correlate rates of lower toxic behavior, like harassment and conflict, with the practice of 'cultural fit'? like doing some kind of empirical study?
ironically i would wager that the people who can pass a 'cultural fit' test with the highest score might actually be Sociopaths, since they are the world experts at being charming to complete and utter strangers.
Note I'm not defending a "cultural fit test" here. I don't even know what that means, it's an amorphous concept with few specifics, everybody defines it how they want.
My point is that from day 1 you have to protect your group from outsiders who are unprofessional, toxic, and will sink morale and productivity. How you do it is up to you, but the issue cannot be naively framed as "companies are bad and sexist, while pure, good-natured, kind human beings are rejected from positions they deserve unfairly".
That's a nice fairy tale that falls apart once you yourself spend a few years hiring.
If your company culture is valuable to you, articulate the things that make it valuable and write them down. Make sure the criteria are specific and measurable, then apply them to the interview and evaluation process.
> Obviously, screening for specific personality traits has not kept Bridgewater or Stripe from succeeding. Uber, however, might be a different story. I am going to argue that personality trait screening may have harmed Uber.
I agree there has been turmoil that has been detrimental to uber. But maybe the fact they specifically looked for hard core, "won't take no for an answer" is the reason they reached massive market / valuation they did. Lyft choose the "friendly" route and didn't get anything close to Uber size/valuation.
I'm not saying this is the best strategy/ always works, but you are saying you consider stripe successful basically because they have not had turmoil/bad press, despite the fact they are a fraction of the value of Uber.
Tldr: you probably NEED aggressive, won't take no, type of ppl to grow to a Uber size as quickly as they did.
This is a bit nit-picky, but I find it distracting when an article leads with a statement that strikes me as grossly inaccurate.
Because if the rest of the article hinges on the accuracy of that opening statement, I'm likely to regret having spent time reading the article.
Clarification: The reason I'm skeptical of that particular opening statement is AFAIK U.S. corporations can have assets, liabilities, etc. that are very different than simply the sum of their employees. For example, I would gladly accept the parts of Apple that aren't employees: its bank accounts, patent portfolio, etc.
"I've been saying for years that employees are our most valuable asset. It turns out that I was wrong. Money is our most valuable asset. Employees are ninth."
A company whose value lies solely or predominantly in its tangible or liquefiable assets is a company that an efficient market will soon liquify, and thus ceases to be a company.
Culture fit is what people really feel inside but don't want to talk about because the current religion dictates that diversity is the best thing for a company. The thing is, for most tasks, homogenous and cohesive team is much more efficient and performant. It is easier for most people to work with people who are similiar to them, both culturally, racially, temperamentally, IQ level and anything else you can think about. Companies, like countries tend to disintegrate when they become too diverse. Sometimes, small doses of diversity are necessary for break throughs and creativity, but it is small doses, not the main way things suppose to work day by day.
Every single sentence you wrote above is factually wrong, demonstrated not only by the study of the history of economics and society, but also empirically in something as simple as a genetic algorithm evolution inside a computer.
I made the first 20-ish hires, then helped out with 20 more. When we eventually got a director and other managers who were peers to me, I held the informal distinction of being able to make good hiring calls. Many of my hires rose quickly in the company, earned strong performance reviews, and even won awards at the company.
Eventually, I become a middle manager and had to teach managers I supervised how to hire in a similar fashion. Relying on me to make a final call wasn't scalable.
And that's when trouble began.
A few bad hires leaked in. For the first time, our group experienced attrition. So I set about to try to systemize my recruiting process such that it was repeatable by others.
That's when I had to codify our team "culture", which was something I used to help with my hiring decisions. There were times when I made a call to hire a candidate who seemed too junior for a role, because I felt there was a strong "culture fit."
Of course, what I realized was, I was simply assessing for typical soft skills, as well as personality traits such as tenacity, initiative, quick study, etc.
In other words, there was no magic. I didn't have some special gift for hiring. It was just a simple unspoken template in my head. And it wasn't exactly "culture" either, as much as it was a set of personality traits that every company looks for.
I suppose what I came up with was basically a "structured culture fit screening assessment", to borrow the article's parlance. If you don't have something like this, I'd highly encourage that you look into it. Not only can it help minimize bias, but it can also give you a repeatable process for all of your company's hiring managers.