I think whiteboarding problems can be silly but....
If you are applying to these jobs you either just graduated, in which case you just spent 4 years finding time to jump through all the hoops the professors gave you, surely you can find another 3 months to become an expert on whiteboarding problems.
Or you're a professional software developer. And the number of professional software developers who are good enough to work at Google or Amazon, live in the U.S. and are "poor" is a vanishingly small number.
Studying algorithms is HUGELY IMPORTANT. They say they "just want to see how you think." That's a lie. Big Tech interviews are like a whiteboarding final exam, and you need to shoot for an A.
Study leetcode. Study resources like interviewcake.com or Cracking the Coding Interview, and take practice interviews at interviewing.io.
Good luck, and feel free to hit me up for advice.
I probably wouldn't make 400k in my first FAANG job. More like 250k to 350k on the higher end if I were really lucky.
for a new grad in a non-CS STEM subject, do you suggest I spend this summer doing a no-name internship, study algorithms, or both?
No offense but I laugh at this thought. Because most people don't realize what they are actually capable of-- they'd rather make excuses.
Excuses are easier to make than to sit down, intensely study, and build projects, in a public library, while living in a tent.
And, I think a lot of people in the "special snowflake" mentality are afraid to recognize that a lot of poor people choose to be poor-- and even glorify it: much like the "gloating over/glorifying victimhood" movement.
As someone who has spent almost a year living in a tent while studying technology, I beg to differ.
I studied for free for several months, a few times, while living in a tent & in a cabin without running water/electricity. It simply requires a strategy to find: internet access, free food, low cost showers, relatively safe tent space near a town/city, etc.
About 8 years ago I stopped working in entry level Marketing ($14/hr) to live in a tent (so as not to have to pay rent) and learn web design. It helped my get my first jobs.
It's a long story-- after a few months, went back to work in digital marketing. Later, lived in a tent again to study web app dev. After dropping out of grad school (lived off loans while living in shack without water & electricity), lived in relative's living room in SF Bay area for 1-2 months while applying to jobs, and landed first programming job.
There's nothing wrong with living in a tent, on a couch, etc-- whether rich or poor.
Living poor didn't stop me-- the willpower to put in the work to actively learn (actively i.e. keeping journals of notes & building projects) is more important than having a place to live.
Anyone can live in a tent and eat food from a food bank for a few months, and shower at a community center, while learning. (Assuming they don't have kids to take care of. If they have kids before getting their career skills together, well... that's just poor planning)
Strategies involved: Motivational thinking. Motivational music. Cultivating positive thought processes. A strong belief in the economics data (bureau of labor statistics). And a strong belief that studying web dev will result in a job, assuming a person is organized, studies, and creates a relevant portfolio with projects.
__________
Note: I have relatives who are currently quite poor, and have been as long as I've known them.
Their problem as I see it?
They refer to themselves as "Poor people" instead of "People who refuse to apply to jobs" or "People who refuse to research economically relevant skills and then build said skills in an organized manner".
The reality is that being poor or not poor IS in their control. And they choose to be poor. Why? Because they choose not to do the alternative: work towards a strategy resulting in not being poor.
I've counseled a cousin who is about my age. He prefers to wake up in the evening, smoke cannabis, stay up all night, and occasionally work manual labor jobs during the day. At age 30-ish. Yet is intelligent. Just chooses to prioritize instant gratification.
It's not either or: 1) people should take more accountability for their own lives, but at the same time, 2) it should be easier to raise yourself up if you're less fortunate.
If you're willing to overcome the obstacles you can accomplish nearly anything. I'm just in favor of fewer obstacles.
But this statement:
>" it should be easier "
applies to literally everything in existence :P
challenges are good-- they result in growth.
I don't think any of them became engineers. One of them ran a catering business, for instance, which is more in line with his background.
Is that growth?
What makes you think that they should become engineers? Just because they're brilliant they're supposed to work in engineering?
Oh boy, here we go again.
Smart people can afford not to study for months. 'Stupid' people can't. Shall I, as a 'stupid' person complain about that?
1) At least a year or two of experience at another programming job, 2) MONTHS of time studying whiteboarding, and maybe 3) A few good referrals.
I know, because I'm 34 and I have 9 years of enterprise experience. I'm trying to get into Big Tech right now (I've interviewed with Google and Amazon and I'm about to do Facebook). I'm lucky though that I have an undergrad science degree from Stanford, so I have at least some credibility in that world and many of my former peers are in that space.
The only really hard part is finding the will to study leetcode problems for hours.
I have all sorts of thoughts on the subconscious motivations behind the whiteboard grind. It's sort of a hazing ritual. Or, like so many things in America, a class filter initially designed to not be a class filter: rich people can afford to study for months for free. Poor people can't.
But ultimately, it's helpful to think of it as a game. Either play it or don't. There's no point in trying to resist it if my goal is ultimately to succeed personally. I keep getting rejected from Big Tech, but local firms are THROWING job offers at me just for being a decent, experienced programmer. I don't have much to complain about, other than the fact that I'd sort of like to make $400k for a little while and then drop out of society for a year or two.
And I think the large majority of people realize leetcode != software engineering ability. They're just trading off a low false positive rate for a high false negative rate. My wife has also been spending months studying for the LSAT. It's really quite similar except I can work as programmer without formal credentials.