I told google that this style of interviewing is discriminatory, especially towards people with families, or other commitments. Never got another call for an interview since ^_^
But this is exactly the point, to be discriminatory while using a valid excuse for doing so.
Same result as you: The recruiters stopped bothering me.
UPD: I have provided negative feedback to my recruiter and they still reaching out to me. Really doubt companies ever act on any of candidate feedbacks since candidates are not employee (I know my previous company didn't, asking for feedback was just a "wanna look good in your eyes" question).
And what happens later when the market is not so hot? I was around for both the dot com bust and 2008 recession. The current hot market should not be taken for granted; it isn't going to last forever.
I'm not looking for a leetcoder. But I've had to reject candidates who otherwise seemed really strong, but then it turns out that they completely struggled with every aspect of a simple python question.
The difference is that a candidate with a good attitude and growth potential is usually worth hiring even if they're not a fit for the role they applied for, and so the hiring manager will get creative trying to make something work.
Perhaps some of the well known tech companies don't put the same level of care into their interview pipelines, and then folk become jaded and irrational? Does anyone remember that Office episode where Ray Romano interviews for the manager position and talks about how all his old coworkers are jerks while eating a sandwich out of his briefcase?
In my experience, it turns out to be some dark corner of the language, or a keyword that's not in common use today. Examples are: 'void' in JavaScript and 'boxing' in C#
personally I think they do make some pretty cool things here and there but they do have very pretentious vibe all throughout
the phase of technology that they own/owned is nearing end soon anyway
Silicon Valley, season 1 episode 1: "But most importantly we're making the world a better place. Through constructing elegant hierarchies for maximum code reuse and extensibility."
Mike Judge is a genius.
He really is. Any one of his properties would prove that by itself. Having such keen insights into disparate facets of humanity tells me that he just gets humans on a level not many other people do. Hopefully that doesn’t sound too flowery and pretentious.
Not to say he’s not a master of his craft, and king of the hill especially had tender moments, but maybe that’s just not what he’s interested in
That's a fair criticism. Much of his work comes off as deeply cynical.
But I don't think those jobs exist unless you're already an expert in something and can get by on the expertise that you already have. Please prove me wrong!
For your example combination, I've known entrepreneurs who've met that mark, but it took some initial risk taking and sacrifice. The work isn't sexy by most SV measures but they make extremely good money and one in particular takes months off every year to travel in Europe while in his 30s. I wouldn't call them an 'expert', they just found a niche that other people didn't find interesting enough to pursue.
Likewise, for other combinations (say 'interesting work + high pay') you may have to put in early work for a PhD where you aren't getting paid well initially. For other combinations ('work-life-balance + interesting work') I've known people who essentially worked for free in order to network and prove themselves until they were offered one of those positions.
I guess the point I'm making is that those desirable combinations don't naturally just fall into the laps of most of us but are the product of deliberate and conscience up-front work that can't necessarily be templated out.
I don't think most civil servants qualify for the high pay portion (at least by comparison to SV pay scales), as their pay is capped. And work as a contractor brings about a host of other issues
The academia route certainly exists, but the glut of of PhDs compared to available positions combined with the amount of complaining I've heard from non-tenured professors would make me a bit hesitant to advocate this route as a general recommendation. But there are other staff positions that might better fit that bill
You'll be lucky to make half the compensation a FAANG engineer makes at a typical investment bank while always being treated as a second class cost center employee.
Amongst the FAANG companies, my understanding for compensation is:
Netflix, Facebook > Google > Apple, Amazon
...adding in the MULA companies, believe Uber, Lyft, and Airbnb are towards the upper end of the spectrum while Microsoft is towards the lower. Correct me if I'm wrong.
Also my impression is that Amazon’s effective comp is significantly below the headline number because they heavily backload RSUs and they burn out or fire so many people in the first couple years.
No company is perfect, not even FAANG. However despite their many warts, I would argue they are still better than working at most other companies outside of the Silicon Valley tech sector where the vast majority of SWEs are employed.
* Of course, there are exceptions. Amazon seems to be particularly notorious.
No.
When I interview people I try really hard not to do stuff like laughing at a serious question or suggestion from a candidate unless they're obviously trying to be funny.
Anyone who has worked at a big company knows how much terrible legacy cruft runs the world, and it does take an effort to not be jaded during the interview.
I work for a major cloud hosting company and was fighting with the team that owns a resource manager that runs on each node over some "fancy C++11" features I used, and in an interview I had the same day, the doe-eyed new grad candidate asked me:
Candidate: So do you guys have a chance to use C++20 yet for work? I find it pretty neat Me: Well...it's hard to explain C: How about C++17, are you at least on that? Me: ... C: 11? Me: the standard we use is older than you are
The guy eventually joined and at least I have a pal to commiserate with now.
Most interviewers are nice people. Assuming good intent when they laugh is going to be the right assumption most of the time.
I don't take offence easily but honestly if there wasn't an explanation for laughter I would straight up ask "What's so funny?".
Imagine how a Russian candidate would feel, when it's culturally "odd" to smile for no apparent reason?
Re the Russian - it sort of depends if the company is mostly Russian or not. If the culture at a company is such that it's offensive to smile/laugh then it would be better for a laugher to join a different company - ie be gated out, no?
Edit since I can't reply to your comment: if you lack the emphaty to understand why people may be very reasonably insulted in such cases, you really shouldn't be conducting interviews, IMHO. The irony part is that you actually describe a behaviour that "assumes the worst of others", as you said.
The interviewee is not your friend, he/she do not know your brand of humor or internal jokes. Additionally, he/she may have cultural differences.
You talked with someone an hour in an unbalanced stressful job related situation and you really think you know something about their personality? Behavioural researchers think that you can't know much. I wouldn't be so judgmental of people you've just met. You should be more aware of the limitations of the interview platform and stick to what you can deduce. (Which is not, that a person is toxic, because he/she felt laughed at)
This is the problem. There are many situations in a career which aren't "normal" and will make people nervous. Giving presentations. Talking to the CEO. Or the boss's boss. Or the leading expert at X. Being in a meeting with all the execs. Or in a performance review. Meeting with clients/customers/potential customers. If every time a person is nervous they assume ill intent of others at the slightest hint, they are going to be problematic. They don't intend to be problematic, but they are.
The point of a mechanism like that given is that you don't have to make a judgement. It's self selecting. In this specific scenario, the kotlin example interviewer a) laughed b) offended a person and c) probably wasn't even aware they had caused offense and d) kept the person out of the company.
If b) had gone down the other path, the person isn't offended and (all else equal) is still enthused to work at the company.
> The point of interviewing is to make judgements. There is no irony. This judgement is: people who assume the worst of others are toxic to work with.
Whew.
The saving grace here is you're so cavalier about this sort of borderline paranoia and megalomania.
It tells me you won't hide it well, and the shrewd candidates will run for the hills.
It really is helpful, socially, to assume good intent. It avoids unnecessary arguments (/wars). Additionally, if you spend a little time digging in when you have assumed bad intent, you'll almost always find that the person has good intent, there has just been a misunderstanding, or miscommunication, or they face very different incentives or have a different set of underlying assumptions.
As for megalomania - it's likely we live in different locations/and or work in different industries. Where I am, interviewers don't hold the power. Candidates do. Especially candidates who are judged to be good. Good candidates make a judgement call as to where they want to work because they have many options. They exercise said power, negotiate higher salaries, and leave if they don't like the arrangement. And good for them, they have in demand skills and a good attitude.
I understand it isn't like this in all locations/industries.
If I caught a whiff of half what you've said here I'd end the on-site early. My industry is too competitive to put up with this sort of childish antics.
I'm quite certain you have good intent. Maybe you've had truly rude people interview you, they exist. Maybe you have worked with a lot of jerks who were rude. Maybe we just have different definitions of "judge".
The most generous take of my intent is ~ "this person really wants to avoid a dysfunctional work culture".
If you assume good intent, you'll face fewer problems in life. It's one of the few pieces of advice that actually work with few exceptions. If you catch a whiff of something, and it smells like bad intent, maybe forcing yourself to rethink it from another perspective will work.
By the way, you should let HR know about your helpful intent to shield the company. They should have a wonderful commendation for you, and some COBRA paperwork to go with it.
This is an example of assuming ill-intent. I didn't say I'd try to make people uncomfortable. Here is what I actually wrote:
>I think I'd be happy to laugh and offend said people as a mechanism to keep them away
An interpretation of this assuming good intent is: "If I find something funny, I'll laugh. If it has the side effect of keeping people out who assume everyone has ill-intent, that's fine. "
An interpretation assuming ill intent is: "i deliberately laugh to see who it upsets".
Most people have read what I said in the generous way. There are a lot of upvotes. Hacker News isn't filled with a-holes who get excited when someone says something awful.
This is the definition of ill-intent.
This is what intentionally making someone uncomfortable looks like.
Glad you learned something today :)
You might as well save your breath at this point, you'll notice everything I've said was a very simple point, and every reply you've had was a roundabout treatise trying to pivot away from <very simple point>.
That's because what you're doing is defending an indefensible position.
-
If you had just said it was a joke it would have been better for everyone involved... what a way to live life if this is really what you're about.
Right, probably wasn't meant to be rude. Not hard to imagine that she might have had a lunch conversation recently about Kotlin, or just finished reading a long HN thread about it, and that was the laughter.
But in general, yeah, we all need to be mindful in our language. The interviewer is under zero stress/tension during an interview, while the interviewee is on high alert.
Finding people who are willing to spend months in order to get the job is one of the biggest reasons companies use leetcode.
A way more apt comparison would be evaluating him on his knive sharpening skills.
This is a dicey proposition when flying: Carry-on is not an option so I have to bring my B-grade knives that I won't miss if the airline loses them.
What keeps you from having a couple sets of A grade knives? Is it cost, or some other thing?
I'm asking because I have a few tools I LOVE. One is a set of dial calipers and I've had them since the 80's. I can get new ones, and have, but that tool I know well. My measurements are most repetable with it.
My B-grade knives are Shuns, which are still much better than 90% of the knives in a typical American kitchen but a bit more tolerant of abuse and available everywhere.
Thanks, that makes great sense.
> It'd be a bit like 'someone else has set up a software development environment for you, now write some code' I suppose.
I make my own knives.
On the other hand typical Uber driver does not need to know anything about the car other than what pedals are for and you turn the wheel to steer. If he tries to take the car to the limit, he probably gets 1 star rating from scared passenger. No need to know how car works.
You decide whether Google engineers are more like race car drivers or Uber drivers.
It'd be a bit like 'someone else has set up a software development environment for you, now write some code' I suppose.
Is this a nonstandard perspective?
I wouldn’t use automated screening tools. These tools select for irrelevant criteria in my opinion, and are mostly useful if as an interviewer you’re too lazy or too incompetent to formulate your own questions that tell you whether a person can solve problems and interact well in a group problem solving situation. But I’m an oldster so YMMV.
I assume you do a much better job given your positive feedback, but it’s not something that every potential interviewer will replicate well if they try to follow your description.
Interview questions with one solution "that’s pretty clever" are IMO, bad. Even cliche "easy" fizzbuzz. Ok...so you know modulo.
Rationing out hints towards that "one weird trick" sounds slightly like a cat toying with a struggling mouse.
It typically looks like a 15 minute phone interview with HR, followed by a lengthy Leetcode/ take home exam (that's auto graded, no humans), a computer form where you input your school, GPA, and courses taken (seriously). All of this info gets turned into a number and then HR takes a sample of the top X and hands it to the hiring manager: "Here are the 'viable' candidates".
The hiring manager then has to (basically) interview the candidate themselves. Ensure they actually have the skills for the position, determine their interest in the role, etc. So this is probably what you're doing right now. Just imagine someone filtered a bunch of your resumes first.
Take with a grain of salt, but I have heard of some folks explicitly getting permission to do hiring outside of HR at said large companies. The kids they get out of undergrad and through HR's Leetcode process are apparently complete garbage. Don't understand C, pointers, memory, or Linux at all. Don't even know what files are.
I've done a lot of interviews, and I just accept that I need to explain what a byte is to the candidates. You'd think people with a programming background would know what they are, but it's not a hard concept, so whatever. I don't really care if they know how to open a file or what a byte is, I want to know if they can describe their output, and then write code that does what they said. And if they can write a loop with a loop in it without going off the rails. Bonus points if they can communicate reasonably throughout. You can teach someone how to use files, and unless you're a C shop, most people don't need to use that much C that they can't learn it when it comes up, if they need to. But it's hard to teach 'make a spec, follow the spec you made' and if you have to teach a programmer how to do nested loops, they aren't a programmer yet. (which is maybe fine, if you're interviewing someone who's only programming adjacent or something)
How I got my job is I searched linkedIn for <company name> + recruiter and just added all of them. That alone generated lots of recruiter calls. This was 2018, not sure if things have changed
Which is of course exactly what these companies should expect if their idea of candidate "preparation" consists of sitting in front of a webform and being asked to type in functions, one after another.
Like a rat in a cage.
Lots of people who come up through the ranks only know how to do coding interviews - coding is what they do in their job, it was the interview they passed and it is what they know in depth. These are also the people confused about why their careers stall.
I never used coding for interviews at Google - even for junior engineers I wanted to see if they understood issues beyond their fingertips. Of course there was always a coding interview or two, so that base was covered.
Can you explain? AFAIK Google has a set criteria for engineering interviews. 2-3 coding, 1 design, 1 something else. AFAIK if you get asked to do a coding interview you have to ask coding questions. The people who review your interview would not find it acceptable to not do it.
From the parent comment I guess they were the ones doing the design or ‘something else’ interview, with the coding interview or two being covered by someone else.
What started off as "write a binary search" has turned into a massive gate-keeping process to try to select candidates who fit a profile. I'm not sure what that profile is, but I know I don't fit it. I grinded Leetcode for 2 months and failed Google, Facebook, and Amazon. I thought there was some luck involved and decided not to put any more time into it. But, I don't fault others who do.
I do think the large pay increases the candidate pool, so there has to be some form of testing. I just don't think as a senior developer, it assesses my skills.
I don't know if it's fair to say the candidates care more about prep than solving real problems if they're just reacting to what at least some employers are expecting.
If you want button-pushers who will keep their heads down and do exactly what they're told, even if it doesn't make sense or is detrimental to the company, then leetcode is a good way to find those people.
If you want actual human beings who are able to think abstractly, critically, and contribute to the team and help the company grow, then look for people who have been working long enough to know that leetcode is a dead end.
I am very against Leetcode style interviews. I promise every candidate interviewed by the org I lead that they won't be asked academic CS trivia.
But, I don't think what you said here is accurate.
If it were true, these other companies where all the critical thinkers have been flocking to would have displaced the FAANGs.
There are good reasons to dislike Leetcode, but your comment reads like sour grapes to me.
> ego-driven hazing ritual
:-)
--
Such a den of.... you can fill in the rest...
I know someone who was literally fired for being "too social" -- and all they did was participate in the stupid parties that were had like "Build you're departments happy hour bar, here is $400 for alcohol to stock it up!!"
They just don't take their day jobs seriously enough and spend most of their time on LC, when you hire them, they leave in a few months because that is what they are good at.
The Amazon interviewers were engaged, excited when talking about their work, and seemed like they were rooting for me to succeed.
Google interviewers were condescending and looked like they were unhappy to be part of the interview process and were just going through the motions because they were forced to. I had a lot of self-doubt after being treated like crap by the Google interview and decided to never do that to myself again.
Or maybe they are putting on an act to seem hostile to push your buttons.
For me, leetcode is basically just what is taught at university level. So they're hiring people based on if they know stuff they would learn and forget from university.
The thing is, it's not about having free time, it's about being so dedicated to getting the job that you'll spend ages learning things you would never do during your day job and if you did do them during your day job you would be considered a cowboy because there are predefined libraries that are optimised to do those things.
For me, the main reason I don't want to work for FAANG is they have a reputation for long hours and that the hardest thing at the companies is the interview process.
It's like asking why you should write a resume when you won't resumes as part of your job. It serves a similar purpose of trying to get to know who you are.
I thought working at Google or Facebook was supposed to be a pretty chill "rest and vest" situation, esp at the former (?)
Remember, with the kinds of education people have at these companies coupled with the amounts of money they are receiving, "the bullied become the bullies" is a serious occupational hazard.
I think this is only true if you want to work on something interesting. If you're willing to work in some obscure corner of ad infrastructure or Google Surveys or something and you're not trying to get promoted, you can stick around for a long time at Google and not get much done. At a big organization like Google the pace is pretty slow even if you are trying to get some work accomplished, so that provides cover for those who aren't as effective.
Ha ha, fair enough!
Usually a good manager can spot pitfall projects from a mile away and put you on a good path to a promotion. But only being good is not enough, you have to work on the right projects, have the right results and the right visibility. If those variables are not there you may go through a downward spiral that ends up in a PIP.
As you get to more senior levels it seems like companies still expect you to do passably well on those questions - but make their decision based on other data-points such as impact/past projects etc.
OK, not professional, and fair grounds for deciding you don't want to work there (interviews are as much for you to evaluate the employer as they are for the employer to evaluate you) but.... have a bit of a thicker skin. Carrying something like that for 15 years instead of immediately dismissing it as the commentary of an asshole is just no way to go through life.
But the integral of having to deal with these assholes over the years (both in the hiring process, and when you start to actually work there) -- meanwhile having a real life to be responsible for (family, kids) -- can start to wear you down, after a while.
And I replied, “Is it even remotely possible I came up with the correct answer by chance?” They agreed not. “Then why should it be my problem that you can’t understand my method?”
In retrospect I was an ass, but I got credit and passed the class, so…
Very good point. I didn't really think about it much before. It is even difficult for candidates who are in IT field but not in FAANG type companies.
EDIT: Most ideas I've seen about replacement for live coding - like take home projects or contract-to-hire - are not really any more friendly to people with busy schedules anyway.
If companies were grilling people new to the career trying to figure out if they could FizzBuzz their way out of wet paper bag (I realize some can't) it would be one thing. Without a track record you don't have much to go on, but the fact that you can work in the industry for decades, ship well-received products people have heard of, have a long list of references willing to verify that you were instrumental in shipping those products, and a lot of companies still expect you to jump through "reverse this string in place" type code puzzles seems kinda bonkers to me... but a lot of the industry just accepts that This Is The Way.
You can bypass this with direct personal connections of course, but its weird to me that so many companies put effectively 0 weight into prior easy to verify accomplishments if the people looking to hire don't know the person on a personal level.
All that said, this is a systematic issue that gets blamed on individual interviewers when the blame should fall on the company. I'm a decade into my career, worked at companies of all sizes, and I've never had or heard of anyone getting trained in interviewing. Outside of informal efforts with coworkers, I've never had a job provide me with a rubric for what I should be interviewing for (shit, I usually find out I'm interviewing someone day-of or day-before). If companies gave a damn about interviewing, I think the process wouldn't be so slapdash, and fewer interviewers would fall back on crap like FizzBuzz.
At most, you might be allowed to skip the phone screen. Or you might be given slightly more leeway in getting the solution.
There are exceptions of course. One close friend/ex-colleague has an uncanny ability to network himself into a coding job at various NYC hedge funds. These being hedge funds, they all pay at least above average (we're not talking about Citadel or Jane Street here), but the downside is that he has to be very unpicky about what the role exactly entails. So this can lead him to very unsexy jobs like shuffling XML feed files back and forth or doing MS Access/Excel VBA stuff, etc. But he can snap his fingers, make a few phone calls to executives and managers he knows at multiple mid tier hedge funds, and start working in a matter of days.
Otherwise there are plenty of companies that haven't fall into leetcode cargo cult.
Or another mostly (rightfully so IMO) choice you see here. Set a low bar to hiring but have a probationary period after which you fire a notable percentage.
For example, I see at all of my clients entry level help desk positions to do things like help with provisioning a new employee's Wintel laptop, answer internal software packaging problems, intake VPN trouble reports, that sort of activity. But not nearly as much as when I entered the industry, because so much has been automated away or folded into centralized management systems, and the trend continues with advances in desktop engineering. On the other hand, I see an explosion of demand for the desktop engineering team positions.
This is being reflected in many other IT areas as far as I can tell. There is a constant push these days at all my clients to automate all repetitive work, and a much bigger appetite from leadership to automate entry level work even when the ROI payoff is longer than 1-4 fiscal quarters than when I started. The push isn't due to direct labor savings though: it is to drive down variance of configurations exposed to the more senior and expensive roles, so the real high-payoff automation can really shine, and they can reduce business-as-usual work hours remediating the impact from those variances.
This really doesn't fix the problem of breaking into CS, and it's not even practical when there are too many candidates. Leetcode gives a gigantic number of false negatives, but that's a price companies are willing to pay.
I’d much rather dedicate a weekend to solve a take home challenge using technologies I already know than dedicate many months to learn a set of algorithms I would rarely use.
I'm 48 and I've been a software developer a long time. The technical interview at many companies has been an ego-driven hazing ritual my entire career, well before Leetcode even existed.
This was in 2004 though so maybe that has changed but it certainly stuck with me.
Google India (c. late 2000s / early 2010s) used to be notorious for this, so much so that Googlers I knew would rather have their referrals give interviews at Google HQ (MTV), instead (not that it was any better, but rather it wasn't as worse).
One piece of advice I received early on was, interviews aren't meant to be a pissing contest but often are. As an interviewee, accept that and try not to take rejections personally (easier said than done). As an interviewer, know that you're in a position of power, and try not to abuse it (easily done but never said).
But, I did work for Amazon several years before and that was mostly a good experience. So, luck of the draw, depending on which manager/team you get assigned to.
Wouldn’t this be true of almost any other selective interview process?
I've never seen her spend more than a day or two preparing for an interview. And she gets paid near the top of her position, and has worked on dozens of multi-million dollar proposals.
The only reason it takes her a while to find a job is there's not a ton of positions that are willing to pay her what she's worth now (she's gone through job interview processes only to be given an offer half of the bottom of the range she provided multiple times), and she usually has to try to sell them on what she can provide to the team that they weren't even looking for (but should have been). Doesn't always work, obviously. Budgets aren't always there.
Meanwhile I've spend 2+ weeks or more preparing (hours each day) for SV interviews and still failed them. In Facebook's case, I was asked three questions by an HR person and gave the right answer to the third question, just not the term they must have had written down for them on the paper, was told I was wrong, and then got a rejection email. At Zynga I was asked to come up with and speak the code to a permutation algorithm, over the phone, on the spot, without using a computer. At Google, in one of the six interviews, I was asked how to convert a 3D grid of buildings into a 2D skyline with a single line, and I had difficulty figuring out the logic for overlapping buildings in less than 30 minutes using only a whiteboard.
I always spend at least 2-4 weeks refreshing algorithms and technical trivia questions before I even start looking for a job in tech.
Or is this some trick?
I was under the impression he was wanting me to figure out how to do it using only the bounds of the rectangles mathematically, and not by changing how it rendered, from what I can remember.
Maybe there's some 2.5D cheats like DOOM did since the 3d model is all on one plane.
Agreed, a ridiculous question.
These questions where you either know the algorithms of giants, or are expected to reverse-engineer algorithms that people did research on for months or years... The height of arrogance.
Not a developer (though was an engineer) but I've never studied for an interview beyond maybe spending an evening reading up on a company. But, to be honest, the (few) jobs I've had over the past 20 years or so have always come through knowing people.
I’m just suggesting some companies may want SREs who understand fundamental computer science and are able to apply it to novel problems, perhaps as a proxy for finding candidates who could create their own terraform or quickly learn whatever tool may supplant terraform in the future.
As an analogy, it’s valuable to hire an electrician who knows the whole electric code really well, even though your project may seemingly only require a subset of that knowledge. For example it’s not obvious adding an outlet could require rewiring the whole circuit and upgrading the panel to meet code.
Symmetrically, as you point out, one may find value in hiring a less expensive handyman to do their basic wiring, if you’re confident you just need a dimmer switch installed.
More realistic is to talk through a process that can be sporadically described in various 1-3 line code samples that will eventually be put together to form a program for something boring. A good boring example is something like transmit a file from a file system across a network and perform an integrity check. Boring but enough steps to talk through and demonstrate with a couple instructions. Nobody does this. I would hear a discussion on proper use of APIs and step by step walk towards success than see somebody lost writing for loops and conditions.
I wonder if this is an intended side-effect, namely also filtering out people who would have passed if only they did rote memorization instead of actually mastering the CS fundamentals.
I agree to some extent but moreso, I think it heavily favours those with a theoretical CS background, which means effectively you are favouring candidates from top colleges in a round about way.
No offense, but you study python, learn its basic syntax + "algorithm design" book + 1 practical book about algorithms and data structures and you're good enough for performing good/optimal leetcodes.
Some things you might miss, for example some exercises you can optimize better if you know some algebra/maths, but 90% of that stuff is more or less repetitive. Once you learn the tricks etc, it really becomes repetitive because finally it's just if/else and for loops. (I don't mean to minimize in any way the effort it takes to make such exercises, it's just the feeling I had while doing some and failing a lot of them).
It's always about specializing one or two specific algorithms you have found in the book[s]. Sometimes it requires coming up with very creative ideas - better for loops. :)
For me Leetcodes are not per se bad. I still learnt something from "being forced" to do them which I probably wouldn't have done if i hadn't been forced. What I despise is the fact that companies have lost accountability in hiring. It's hard to interview, so it's better to rely on an "industry standard" - after all Amazon and Google do the same, so why shouldn't we?
Last time I did an interview where this wasn't the case was 1998. Granted I don't really interview anymore.
This was a long time ago, I get work through my network now, interviews consist of going to lunch and shooting the shit.
Don't hold it against your colleagues. A lot of this knowledge isn't obvious to anyone and people chiding people for not knowing would be the last to come up with solutions themselves. This is just insecurity and bickering.
Google has been a publicly traded company with a massive scale. If the technical problems aren't interesting to you, I doubt it is worth it to work there. The culture of such companies are always the same. Detached to minimize problems, don't make personal problem a problem of the company. Good colleagues can make you forget this for a while of course.
It’s fine. I’ve seen code from FAANGs that evoked the same reaction from me.
Is it possible you had a better solution that the interviewer simply didn't recognize?
Hey, I had a similar experience with Google! It was my first technical interview for my first job out of college. The interviewer laughed at my code, and then after going through the logic said "Wow I can't believe this actually works."
Personal grievances aside, I've come to think that the Leetcode interview style has morphed from a "let's see how you handle problems at scale" test into an ego-driven hazing ritual. My biggest gripe is that Leetcode is systematically favoring candidates who have months of free time to memorize arbitrary logic puzzles. It makes me sad for the less privileged candidates who might be working a job while also trying to break into the IT field.