My parents used to put me in after school education programs where they crammed memorization and "finding the trick" type problems. I'm not knocking that sort of thing, because it gave me a pretty solid problem solving kit, but most of this stuff is not at all relevant to any SWE job I've held. However, most people who are in tech companies are like me and are familiar with trick questions and memorization. So, that's how they test other people.
I think its useful to find the rare candidate who is both strong at algorithms and problem solving in general while being able to explain and talk like a professional.
Most of the time you get some "rock-wall" type who can crank out LeetCode but is awful to actually work with, or you get someone who is "toxic positive" and also awful to work with because they suck at the actual work.
So again, just gotta optimize for the sort of team you want to build. And most jobs where they ask these type of questions are offering high TC, so its not exactly unfair.
Like I mentioned elsewhere, I've worked at a company where people asked LC type questions and I chose to ask more domain related questions where I mixed in the algorithmic challenges. One thing I noticed is that we'd usually ask 2 questions each round so when ppl asked LC questions usually either the candidate failed quickly by getting KO'd at the 1st question, or they answered both flawlessly. Isn't that kind of concerning? So I'd start with the LC and then ask my domain focused algorithmic question, and notice that usually I'd get the KO/nerd on 1st question, but people might struggle on 2nd question I asked.
So idk. Long story short I prefer to work with people who can think and aren't rock-wall types.
Comments
My parents used to put me in after school education programs where they crammed memorization and "finding the trick" type problems. I'm not knocking that sort of thing, because it gave me a pretty solid problem solving kit, but most of this stuff is not at all relevant to any SWE job I've held. However, most people who are in tech companies are like me and are familiar with trick questions and memorization. So, that's how they test other people.
I think its useful to find the rare candidate who is both strong at algorithms and problem solving in general while being able to explain and talk like a professional.
Most of the time you get some "rock-wall" type who can crank out LeetCode but is awful to actually work with, or you get someone who is "toxic positive" and also awful to work with because they suck at the actual work.
So again, just gotta optimize for the sort of team you want to build. And most jobs where they ask these type of questions are offering high TC, so its not exactly unfair.
Like I mentioned elsewhere, I've worked at a company where people asked LC type questions and I chose to ask more domain related questions where I mixed in the algorithmic challenges. One thing I noticed is that we'd usually ask 2 questions each round so when ppl asked LC questions usually either the candidate failed quickly by getting KO'd at the 1st question, or they answered both flawlessly. Isn't that kind of concerning? So I'd start with the LC and then ask my domain focused algorithmic question, and notice that usually I'd get the KO/nerd on 1st question, but people might struggle on 2nd question I asked.
So idk. Long story short I prefer to work with people who can think and aren't rock-wall types.