Companies fear one thing even more than making a bad hire, and that's getting sued for their shoddy interviewing/HR practices. A complaint can trigger investigations and lawsuits from the state, not from the candidate. The ADA is sufficiently vague and comprehensive at the same time that it's a bogey-man for HR people.
Some US states already prohibit pre-employment background checks and credit checks. States should prohibit employers from casting nativities and reading entrails during the interview process as well.
When asked my Myers-Briggs "Type Indicator" I always say "Scorpio." Weird how so many rational and educated people fall for that bullshit.
That being said, I wonder how much of this is just that people who have a bad interview experience are more likely to post about it than someone who has a "normal" experience.
Like you, I had one interview, when I was fairly new out of college, where they asked me how many golf balls it would take to fill a school bus. I've had a handful of interviews where I've been asked to do some live-coding; these were all less than two hours.
I've never been asked to go through six rounds of interviews, or do a take-home test, or tell them which color dragon my code is. Of course, I intentionally avoid FAANG, which is where I hear about a lot of this dumb-assery.
Interviewer: "How much water flows through the Thames?"
Me: "Well, I sat next to the Thames once, and it's maybe 50 m across. Depth... I dunno 10 meters? Speed..."
Interviewer: "Actually... It's 100 m across and..."
I could see the interviewer realizing this wasn't the most relevant question to ask to someone not from the area. Perhaps they wanted that interaction, I don't know. A silly question that just dealt with local knowledge, and (in the end) very little modeling.
I played along, then sat in my hotel room and shook my head.
However, one of my hard rules is that I don't spend more time on the hiring process than the company does. I'll happily sit and talk to an employee for four hours, but I'm not going to do a "take-home test" for more than 10 min.
What a stupid thing to ask in an interview. Answering that would prove... what? That you can multiply and make some wild guesses about a geographic detail you aren't familiar with?
I interviewed for a job in Sweden a long time ago (I'm a US citizen). The hiring team took me to dinner, and I got the impression my future at the company (or not) depended on my willingness to eat every kind of fermented fish offered at the restaurant. They didn't ask me how many liters of water Lake Mälaren holds.
And if you are from Sweden you can ask back: how many IT people does it take to eat a single can of surströmming? It is at least as relevant to doing the job well and to mix with locals, isn't it?
"Where on the Thames do I measure the flow? And what time of day and day of the lunar month?
"What? I don't know that!" Then the interviewer plunges into the gorge of eternal peril.
Yeah, it was just weird. The interviews by the team in California were better, to be fair. (Though I still don't understand why they had to fly me there. The day after a 15 h flight across timezones, they spent 8 h giving me brain teaser questions. I was toast after that.)
> my willingness to eat every kind of fermented fish
That would have been my cup of tea!
At work you may be asked to spec out and implement a poorly-defined defined request.
They expected you to have asked clarifying questions rather than steaming ahead in the assumption that the Thames is 50m metres wide at all point.
The interviewer stating “actually it’s 100m” shows that they didn’t understand this point either though, and was probably repeating the answer they were told to give if the candidate asks this clarifying question
If you're a recent grand or early in your career, though, you just don't have that kind of clout. You're going to jump through these hoops because you need the job, and you're going to be competing with people in a similar position doing the same.
Developers trying to get a break early in their career should remember that companies want to hire people they perceive as adding value and fitting in to their team and organization. Lots of people can crank out code. Just knowing a programming language or framework is not a competitive advantage in the job market. You need to communicate good people and team skills, and either domain expertise or curiosity about the business domain. I've interviewed too many inexperienced programmers who have focused solely on technical skills that, while hard for them to acquire, don't actually stand out much in the field of candidates. Some time learning to speak to a group without anxiety (Toastmasters, for example) can have more value than learning how to traverse a tree in Python.
Early in my own career companies commonly hired people with little experience, fresh out of school or eager self-taught programmers, and then trained and mentored them. Companies had to do that because of short supply, and because every computer system was proprietary and unique. Now companies won't put any effort into growing someone into a career, they want interchangeable people they can slot into a job and get work out of right away. To differentiate yourself in those conditions you need contacts and reputation, or you need to come across as someone who can add value and commit to the organization.
I have some articles about job hunting and interviewing, more tilted to freelancing but possibly valuable for f/t job hunters, on my site typicalprogrammer.com. Opinionated, free, no ads, signups, popups, or affiliate links.
It's such a completely bizarre practice, and honestly insulting to a degree. I get that there's a huge influx of applicants at larger companies, however it's absurd to comply with this garbage structure where you can't even ask important questions to decide if you actually want to work there. I applied to a different job afterwards and once they told me they used that company as well, I refused to continue the interview process.
Worked out in my case, I ended up somewhere far better than either of those companies. I just can't bring myself to respect companies that treat prospective employees in this manner, it's crap.
Back when I had to interview for jobs I would try to turn the tables as early as possible. I would do my research on the company and their business. I would ask questions about the job, the company, the people. I would try to get the interviewer(s) to tell me about their job. People generally like to talk about themselves so I'd try to get them going on that. Of course you have to get in front of the right people -- an outsourced screening team probably can't even talk about the details of the job.
I get why companies do this. They want to screen out unqualified candidates early in the process, because big companies get lots of applicants. I don't think the way many companies go about this works. I've been in the position of hiring at places that get hundreds of applicants for a job, and there's no way we could interview all of them face-to-face. I don't think brain teasers or algorithm questions are useful, though. I used to prepare questions relevant to the job for screening and interviewing. And I would ask questions to determine if the applicant had done any research -- astonishing how many people get to an interview without knowing the first thing about the company or what kind of work they might do there.
I’ve worked in software for 40 years, had exactly one of these ridiculous interviews. Despite years of relevant experience I bombed it because I couldn’t guess something stupid like how many tennis balls fit into Chicago. Recruiter told me they hired a more qualified candidate. Then two months later I got a desperate call asking me to start tomorrow. The person who aced the interview couldn’t actually do anything. I told them to stuff it, I had already found a better gig.
I have refused garbage personality tests by saying those violate the ADA. Think about what position that puts the company in. And I’ve had offers even after flatly refusing Myers-Brigg or similar nonsense.