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.
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?
I've shared about how I was forced into early retirement, in 2017. I had tried getting another job, after leaving my company, but no one would even talk to me (I won't go into why).
It absolutely infuriated me. It was humiliating and scary. I decided that I didn't really need to be patronized and insulted anymore, and just gave up.
But I was quite able to stand on my own. I didn't need the money; just the work.
After over four years of working (harder than I ever did, as a corporate shill) for a nonprofit (and learning new stuff), I can't see myself ever going back to the rat race.
... as fast as possible, whether it actually works in all cases or not. As Dilbert says "our boss can't judge the quality of our work, but he knows when it's late".
Wow. It’s really difficult to imagine a likely scenario where that’s justified.
Not that that is a justification, but it's almost certainly the reason.
https://www.businessinsider.com/amazon-tracks-unregretted-at...
Actually, writing this down made me think that big companies (like the FAANG mostly are) are quite anti-capitalistic. I'm not sure how to call them, because sure as hell they're not socialist or anything of the sorts, but it's reasonably clear that many of the theoretical capitalistic principles that many of us know in one way or another do not apply to these economic entities.
These companies could make competing internal IT groups and datacenters competing for projects and services in the company.
But companies don't like free markets and competition, every company strives to establish monopoly control. Likewise, middle management doesn't like competition, it clouds their promotion paths.
A business is a socialist command economy embedded in a market economy, which has odd boundary effects at the interfaces.
One counter-example comes immediately to mind, but mentioning that would cue a whole tedious discussion of "But that is socialism, it's even in the name!" vs "Just because it's in the name doesn't mean it actually is socialism!", so I won't spell it out.
> In particular, businesses really don't fit the definition of socialism.
No, true. As others have mentioned, feudalism ses a better fit.
Because actual capitalism is just the means of production being privately owned and operated for profit. It says nothing about how companies operate or what kind of dystopian politics they might have.
---
"I'm sure I'll take you with pleasure!" the Queen said. "Two pence a week, and jam every other day."
Alice couldn't help laughing, as she said, "I don't want you to hire me – and I don't care for jam."
"It's very good jam," said the Queen.
"Well, I don't want any to-day, at any rate."
"You couldn't have it if you did want it," the Queen said. "The rule is, jam to-morrow and jam yesterday – but never jam to-day."
"It must come sometimes to 'jam to-day'," Alice objected.
"No, it can't," said the Queen. "It's jam every other day: to-day isn't any other day, you know."
"I don't understand you," said Alice. "It's dreadfully confusing!"
Ya, and the recruiters always try to get you into what sound like would be the worst orgs (I would guess positions in good orgs are "known" about outside of what the recruiters are trying to fill).
I am not certain what they were going for, though I can tell you I left knowing that even if I had gotten an offer, there was no way in hell I'd be accepting. It's obvious there are some very successful (happy?) amazon people (amazonians?) but no thank you, I enjoy living.
I have another friend who was offered a job there and turned them down, then the hiring manager fired back with "Oh c'mon, you just have to last a year here and then you can put Amazon on your resume" which is hilarious and totally fucked up.
"We aren't going to pretend that you will actually like working here but if you suffer for about a year, it's gonna do wonders for attracting future employers"
I often wonder if Amazon wouldn't actually be more successful if they treated their people better. I think there's a strong sentiment of Emperor Bezos' New Clothes and survivorship bias that has Amazon leadership convinced that being evil bastards is the only reason/way the company can be successful.
Facebook and Google basically have one product that is a money machine which funds everything else. The rest is mostly window dressing.
Amazon does not have the luxury of being able to rest.
I think you will find a similar culture at Netflix, which is also in a competitive market.
It's rare (not unheard of, but rare) to work your way out of a PIP. In general, if you get put on a PIP, I would immediately start doing some soul-searching as to why I might be on the PIP and how I can improve AND I would start looking immediately for a new job.
Technically, there are two desirable outcomes to a PIP:
1) the employee improves and no longer needs to be on a PIP (rare)
2) the company successfully fires the employee and doesn't get sued because they covered their ass with a PIP
From HR's perspective (and the manager's), it is indeed the reluctant last resort, but it's essentially a win/win for the company. Either the employee improves, or they can fire them while minimizing legal risk.
In other words, it fulfills its intent quite nicely. It just doesn't always end positively for the employee. So I guess in that sense, it depends on which way you look at it.
I feel it would have been possible to work my way out of it, I think different companies use them in different ways.
Ah well, most of the team got poached by Revolut anyway. I find WFH suits me a lot better because as long as I can go to stand up after a heavy weekend (which is a lot easier if you can do it from home) and then achieve above and beyond the rest of the week, there's a lot less anxiety.
No matter how much you might try to "ace" it and put in your best effort, more than 9 out of 10 times, the person will not come out of it. Anything and everything no matter how minor is likely to be used as supporting evidence. So interpret it as a notice of eviction of sorts where they pay you some months to find a new job.
Yes, there are exceptions. Thing is do you want to try your luck with HR?
The cure? Don't allow corporations to set your value, specially not mad and crazy corporations like amazon and space penis.
Because the rational choice is to take the high severance (being handed the PIP means your manager and manager's manager have already made up their minds against you, I've seen a coworker given an impossible task), that means that being an average Amazon engineer will have a 50% chance of being fired by your 5th year.
A PIP is a situation where you are told you are not performing at the desired level and needs to improve. In a respectable company being on a pip can be good for you. In my personal case I was not performing well due to personal issues. Getting on a pip saved my job. It gave me the resources and attention to turn the situation around. You get a clearer plan of what you need to do and closer relationship with mentors to help you on the way.
But again if you don't improve you are fired and you have that hanging over your head.
There is no actual ass-covering need to put someone on a PIP. If a company in the U.S. wants to fire you, they generally don't need a reason.
Individual company cultures will, of course, vary. There are a lot of shitty managers out there.
That's only true if they can prove the reason isn't one of several prohibited reasons (racism, sexism, ageism, etc.). And how do you do that? Have a PIP system in place in which the acceptable reason is documented in detail and all employees are treated consistently.
That's why PIPs are effectively termination at many companies. Even if you survive it will be permanently on your record and your opportunities for advancement will narrow significantly.
They don't need to prove anything. In employment discrimination cases the burden of proof is on the plaintiff.
But a documented process, that was followed, that set defined goals, and recorded failures, is going to be a much faster and more sure trial.
Also with respect to the attorney fee provisions, in California they are almost entirely one way in practice even the ones that are loser pays in reality.
For me as a manager, the PIP allowed me to set up an environment where the developer would be able to perform their job in isolation with specific, measurable and concrete tasks that do not depend on any third party.
I've successfully applied this for some devs that were doing really bad for more than 6 months, and it allowed me to find that the person was in the middle of a lot of shit. Once the developer was isolated and given specific tasks, they showed why we have hired them in the first place.
I also have let go a developer for whom the performance plan was more on the people skills side: This person was just not a team player, and was dragging the team along with him. A PIP allowed us to show him exactly why he ended up not being a match for the company.
And then there was another one who was just lazy... didn't do stuff, and after the 2nd month of the PIP he acknowledged that he was just being lazy, and waited for the PIP time to expire so that we fired him (with 3 months severance).
All that said I agree they can be genuine. They also can be ass-covering.
Which is why I advise anyone who asks me about PIPs who I deem is sufficiently introspective to immediately secure another job and leave if they receive one. The pure game theoretic approach for employees to use is: unless they have overwhelming historical evidence their manager is someone like you, it is safer for them to assume they are in the majority lumped in with sub-optimal management (much less leadership, both activities tough as hell to pull off well), and insta-bail as soon as they can.
The challenge with PIP's is there are no governance controls around their deployment, so they are weaponized for purposes other than their purported staff development role: as budget controls (deliberately hire some people with the intention to PIP them to maintain headcount), as knife fighting, as political machinations, as compensation-busting tool, etc.
There are legitimate employees who need a PIP for the ostensible purpose they were created for. They're more rare in my experience than how many times PIP's are actually used.
This is true as far as it goes, but exceptions to the at-will rule include Title VII claims, so if they have an illusion of a dream of a identity-based claim, you need some documentation.
Since most companies don’t want to pay even the minuscule amount required to get a valid release, this is the alternative.
"what the company represents"
of course they are not going to represent it as, "we are going to fire you".
Good for you to keep the job (if that's what you wanted) but in general it's a legal process companies do to easily fire people.
But it was really a time for a parting of the ways at that point.
It's "I don't want to fire you, but you need to fix these things. Let's put this in the books so there's no disagreement over whether you're aware, and what you need to do."
In most cases at-will employment means the employer/manager can fire a person, so if that was the only thing going on, it would already be done.
For anyone who is a member of at least one protected class (which everyone who has any [or where this is possible, no] race, sex, ethnicity, religion, or national origin unambiguously is for each that apply, and there's some others that are less universal, and that's just under federal law) there is always a risk that that they will file a claim to have been dismissed for that reason, and under the civil preponderance of the evidence standard, if they have any substantial evidence indicating that might be the case the employer needs to overcome it with superior evidence that it is not.
And that is what a PIP is for, to provide the evidence trail supporting that alternative reason. They also serve as notice to people to get out before they are fired, which (unless bungled bad enough to support a constructive termination claim) also avoids wrongful termination liability, because the departure is voluntary. PIPs have nothing to do with performance improvement and everything to do with liability containment.
For actual performance problems that the employer wants to resolve, regular performance reviews and informal counseling that occurs before a PIP is the means to address it.
Best advice I can give someone who gets on a PIP is don't wait or work the process, just make an exit plan and act on it (interview quickly) and own your destiny. Also if you've been a stellar performer and you move to a team where things aren't working out within the first 3 months, transfer quickly (go to HR and claim mental and emotional wellbeing) before your performance reviews get trashed and then it's impossible to transfer.
The Big G. Your past performance primarily only influences the decision on whether you have a good track record of delivering, but once you transfer you essentially reset the clock with the new team and manager and the expectations might be completely different for whichever reason, it could be personality or org structures etc. I don't know if my experience is the norm at all of them since I haven't worked at all the FAANGs, but as I said it's important to "read the tea leaves" early, and if the new team doesn't feel right make your opinions known early and plan an exit before you come a statistic.
Once you have reached that point, it's almost moot whether or not the plaintiff will win, as lawsuits are sufficiently headache inducing and expensive that a settlement is likely.
The odds of the above happening might be low, but being made aware of the possibility causes employers to CYA more than you might think in an at-will state.
Lawyers tell management this and get blamed for the law and courts being the way hey are. “Buy them out with a severance and a release” gets “why should I pay for something I’m allowed to do.” A few months later in house counsel gets screamed at “why is outside counsel charging us $50,000 for this summary judgment case?!”
“Well, I told you that——-“
“This is your fault! Why doesn’t EPLI cover it”
“You said it was too expensive, so we got the one with the high deductible.”
Since the defense bar also lines their pockets with these cases, and scare pieces on their blogs “review your employee handbook now or else!” No one fixes anything.
And in the U. S., anyone can sue anyone at any time with no reason (though there should be some semblance of a reason, or good luck finding counsel to take the case). Maybe you fired me because I'm black, maybe you didn't, but without any documentation of what the real reason was, the company stands a good chance of settling to avoid the time in court.
Judges hate this be careful. If you sue for "not enough ham in your subway sandwich" - I would bring overnight clothes and a toothbrush. Contempt of court is a thing. Judges hate time wasters.
And you can't just gather those reasons for employees in protected classes or that itself is discriminatory treatment of employees.
So you have to make a choice as a large company: PIP systems or set aside more money for legal fees and settlements. Most opt for the former.
Better documentation means only increasingly bottom feeding plaintiffs lawyers will take the case.
Defense usually wins if they have good documentation of putting employees on a PIP, even if the reason is obviously dubious*.
Maybe I'm cynical because I've only seen it in a lawsuit context, but if you're put on a PIP, start applying. There's no out.
* like, discrimination, company wants to fire long-term employee because of an injury, company wants to fire an employee for union organizing, etc.
I'm a manager at Google and have therefore been privy to a bunch of PIPs. I know a bunch of people who have survived them and many of them have later gone on and had successful promos. I've seen exactly one case where everybody involved was resigned to the fact that the PIP would almost certainly fail and that is because the person being fired was a raging asshole. A manager who wrote a PIP designed to be impossible would themselves be given shit performance reviews.
A PIP isn't just a closed two-way conversation between a report and a manager. In every case I've seen there are multiple eyes on a PIP and revisions to them.
The manager might lean towards salvaging or maybe documentation. Usually, an honest manager would give some hints as to the nature. Like, maybe it’s best you look at other opportunities kinda nods. Some people are also just bad as reading the crowd and would ignore a written sign that stated “you will be fired.”
I’ve seen bad managers give a junior work that needed a whole team to resolve. I stepped in during reviews and fixed that train wreck. However, on their second chance with simpler work it didn’t turn out much better. At that point we probably soured the engineer. Later we removed the shitty manager. He took off as soon as he received his PIP.
One of my first batch of directs I took over was in the latter group. He made no connection that this could lead to termination. I would love to have heard the conversation with his previous manager. Also, he might have been feigning ignorance for more time. He quite simply just needed direct coaching on interacting with people. He went from the worst engineer to someone I tried to give the highest rankings. My manager wouldn’t have it, but we did compromise.
A lot goes on in the background, but something I never did was bend to statistics. I didn’t care what HR thought was the expected target. Some people are spineless and just rollover. Drives me mad. What are they going to do? Fire me and send me some place else for more money?
On the other hand, if the employee in question is fairly certain the PIP conditions can't be satisfied, signing the PIP is a very bad idea. It amounts to written acknowledgement of failing to perform the employee's end of the employment contract and gives the employer justification to fire the employee with cause. If that's the case, declining to sign the PIP and asking about alternative next steps is the way to go. In that case, there's a good chance that the company will offer an exit package in exchange for a general release. One of the upsides of this approach is there's no PIP in the employee file, on the off chance eligibility for re-hire is a concern.
It's like if someone threatens you with a lawsuit. You don't communicate with them ever again, you tell them to contact you via lawyer and hopefully you never hear from them again.
I've read articles claiming that Bezos had certain opinions about people being lazy, and that he intentionally structured Amazon to make it almost impossible to get promoted. Basically, people are hired to do a specific job, and they will never be allowed to do any other job or be promoted until they quit from overwork. The exceptionally few people that both deliver the impossible and don't quit over the workload are treated as valuable, but only at the specific job they are currently doing.
From what I've been able to piece together, this was always at least somewhat true, but has gotten much worse the last few years. I think Amazon is likely going to start running dry on willing candidates in their engineering and management teams within a couple of years and we'll see them start to lose market share as a result.
Its crazy how these FANGs promise the moon, the serious RSU vesting starts only after 1 - 2 years and the average tenure is like 1.5 years.
>>he came back from parental leave and his direct reports had all been put on a PIP while he was out
I've heard this quite a bit at many places, when you go on a longish leave of any kind basically people kind of replace you. When you come back you discover your job is gone, for this reason alone I don't know many people who take these long leaves/vacations.
I've heard that, because of the stack ranking, if managers want to keep their current team unchanged, they sometimes hire someone new just so that they can turn around and fire them.
"Urgent to not block progress, but also ironic that they are asking a person who has no clue what they are doing to deliver critical work"
Friend of mine started a role there (this was 4-5 years ago) and was fired (sorry... more or less asked to leave, being told he could keep his signing bonus if he just left) within about six weeks because he wasn't immediately delivering on some insane amounts of work. Truly, he recapped it for me, the expectations were absolutely incredible and I'd consider him a hard worker who has found a ton of success in his current role.
I bag on Amazon a lot on here (which if I were to review with my therapist is likely because I had an absolutely HORRENDOUS experience in an interview loop with them my first step out of college that still makes me nervous in interviews, even 15 years later). But living in Seattle, a notable chunk of my social circle works there. I'd say a few enjoy the scale of things they get to work on or perhaps the brand name, but overall none of them ever talk about liking the work environment/balance/culture.
One friend, at a director level, just quit on a whim because he came back from parental leave and his direct reports had all been put on a PIP while he was out. He told his VP to fuck off, left, and is now on sabbatical. I've never seen him so happy.