I said - oh yeah you heard about that. Yeah I'm doing that later if you can make it.
Got the job.
But each their own, I'm sure people are happy going through that process and then also enjoy working there.
“What stack would you propose for this product?” Instead of, “Take these two arrays of strings and output a new array where no strings has a letter found in another blah blah blah...”
It's often difficult to interview specialized developers because the specialist often understands (or pretends to understand) the specialty better then the interviewer themselves.
These hiring opportunities represent a large number (maybe even a majority) of roles at small, medium, and large, companies.
FANNG and maybe a few other companies which have custom tool chains from top to bottom are a little bit different because Google probably doesn't care if you know Jenkins because you'll have to be trained in their homegrown alternative anyways.
The current state of algorithm-heavy interview process is really just a hamfisted solution to the problem stated above. They are trying to minimize false-positives while accepting that it increases the rate of false-negatives, and their proxy for implementing this threshold is algorithmic knowledge. It's not fun for anyone involved, but I guess I have to assume it works.
If they pass that I would devise a longer interview suited to their CV. I expect a senior to be able to answer architectural questions and / or talk intelligently about architectural decisions they've made on past projects. If they claim experience in a job-relevant domain I would ask domain-specific questions, if not, the expectation would be that they would ramp up, and I would stick to more general questions.
So the point is to avoid wasting time preparing and doing longer interviews for candidates who can't even calculate the average value of an array (or worse, hiring them), and get a bit of an idea of their ability to think and communicate about code.
I'm honestly not very confident this is a good approach but that's why I did it.
There is a cheap engineer shortage.
The money can compensate for a lot of unpleasantness. I think finding a “dream job” is an illusion for most people. The question is usually “bearable” or “unbearable”.
The practice is about getting comfortable with the process of being interviewed. Practice is a great way to become more comfortable and confident before the real thing.
Get the anxieties out before you sit down with a real job interview so you can focus on performing well in the interview.
I think some coding interview questions are bad, some are better, but I don't think the idea that you must take what amounts to a test to get a job is inherently bad.
Maybe? At 5-6 years out of school, I personally don't mind tests. Sometimes I actually really like tests (e.g., I've started watching youtube vids of Putnam problems, like doing daily problems on brilliant). I can imagine time to study becoming more scarce if I had a family, but I was under the impression that changing jobs was something that's gonna take a healthy amount of time regardless.
To be clear: I think you can have bad tests, and I imagine I'd find it frustrating if I was boxed out of a lot of jobs I thought I'd do really well at because the unrelated test keeps me out. But I don't think needing to study inherently makes a test bad.
Where I do think you're spot on is that you shouldn't focus all of your time practicing one specific type of interview or practicing for interviews at one specific company. FAANG is a good example. I've seen far too many people get enraptured with the "dream" of working at a FAANG, devoting all of their time to practicing FAANG-style interviews, making their whole life about it, and then either not getting the job or they do get the job but they quickly have their illusion shattered that FAANG isn't heaven and they wasted all that time preparing/fantasizing over something that isn't true. It's Paris Syndrome [0] but for jobs.
It may have changed since I've been living in Canada, but total comp in Toronto at the time were HALF what they were for similar positions in California. Almost all my great engineer friends who still live in my home town in Canada work remote for USA companies for that reason.
The beauty of the peer chat was that it shows the company culture. Lot of interesting people. And makes you highly interested in the company and the job.
Not all experiences were great, but I didn't have to go through painful whiteboarding sessions