This will probably be lost in the pile of comments, and I'm sure some people will interpret it as humble bragging. But I genuinely do not get the angst and anger over the tech screen, from the perspective of an applicant. So I want to explain why I like them.
My background: I've never taken any kind of CS or programming class in my life. Mediocre grades in college. My first exposure to programming was at age 24, as I fell into it with an IT tech position. Went from there to a series of jobs at several startups. Before applying to a FAANG, I went through Elements of Programming Interviews and solved all the problems in it, which at around 10 hours/week took maybe 6 months of prep. I then sent in two applications, one to FB and one to GOOG, immediately got phone screens, passed, and then two weeks later went through the on-sites. Every one of the questions was either lifted from the coding prep book or trivial.
End result? Offers from both, joined as an L4, at a total comp higher than I had ever dreamed of, and significantly higher than friends in medicine who have easily spent over a hundred times as much time preparing and studying as I have.
So I'm kind of left flummoxed. Am I just incredibly lucky? There are huge issues in the hiring process, but if you want a job at FAANG, as far as I can tell it's incredibly easy to game the system. Set aside some time each week (easy, if you don't have kids), study for a couple months, and then apply. There's literally no other field than ours that is so open to motivated people without paper qualifications and that simultaneously offers so much in terms of lifestyle and compensation. Whether it hires the best candidates is another question entirely, but that's an issue for the company, not for the applicant.
But, when I give an interview to an applicant and use my go-to question, which I initially feared would provide no useful hiring signal for being too easy (and which, yes, I've tested on all my coworkers, who solve without any difficulty), I find that only maybe a third of applicants complete it at LH or higher.
To be clear, I'm calling this out as a blind spot I have--there's clearly a massive gap in perspective here--but hopefully it'll provide a useful data point for why tech screens aren't universally hated and why they manage to persist.
Your experience is incredibly close to my own. I'd love to know if you also feel the same about a few other issues:
- I used to have a massive impostor syndrome due to not having a CS degree. Joining FAANG alleviated perhaps 80% of it. (Just to be clear, that's not the reason why I joined FAANG; I just wanted to try a large corp after years in tiny startups.) It feels good, but I'm mourning it a little, because I believe it was a driving factor to how intensely I was trying to better myself.
- I enjoyed solving all these problems. There's beauty in finding the most optimal solution to each of them. Binary heaps are plain beautiful, and suffix trees and arrays still blow my mind years later. I wonder if people here dislike this stuff because they were forced to learn it in college for a piece of paper, while we learned it on our own volition for a big jump in compensation. Maybe I'm just projecting because I hated school and college; many HNers seem to have enjoyed their studies, which is awesome.
Absolutely. And that imposter syndrome played a substantial part in motivating me to apply to FAANG :) I found myself in the doldroms for years afterward after starting at G, but I recently quit to do my own thing for awhile and have been so happy to find that I still have the capacity for joy and drive.
And, yes, it was incredibly fun to study and solve these problems. Sometimes I'd end up going on unrelated tangents--cache-oblivious algorithms, a full history of quicksort and all its variations and partitions, how all the concurrent data structures in the Java standard library are implemented--and just spend all day reading about them and/or re-implementing them on paper on a sunny day in Golden Gate Park (and one of my Google interview questions was with a gruff Ukrainian guy who wanted me to implement a concurrent LRU cache, so that went swimmingly!). And so when people talk about how hellishly oppressive and difficult having to learn about binary search trees is, it just doesn't resonate with me. Even if not for the jump in comp, it was just genuinely fun.
My background is math/physics, so perhaps that's part of it? Maybe many applicants just want to build something and just care about the final product, while the part of programming that I enjoy most is the brain teasers and making things work in the most efficient and elegant way possible.
Thanks for answering. If you're still in the Bay, and feel like drinking a beer to our dear departed friend the impostor syndrome, feel free to email me :) it's in my profile.
My background: I've never taken any kind of CS or programming class in my life. Mediocre grades in college. My first exposure to programming was at age 24, as I fell into it with an IT tech position. Went from there to a series of jobs at several startups. Before applying to a FAANG, I went through Elements of Programming Interviews and solved all the problems in it, which at around 10 hours/week took maybe 6 months of prep. I then sent in two applications, one to FB and one to GOOG, immediately got phone screens, passed, and then two weeks later went through the on-sites. Every one of the questions was either lifted from the coding prep book or trivial.
End result? Offers from both, joined as an L4, at a total comp higher than I had ever dreamed of, and significantly higher than friends in medicine who have easily spent over a hundred times as much time preparing and studying as I have.
So I'm kind of left flummoxed. Am I just incredibly lucky? There are huge issues in the hiring process, but if you want a job at FAANG, as far as I can tell it's incredibly easy to game the system. Set aside some time each week (easy, if you don't have kids), study for a couple months, and then apply. There's literally no other field than ours that is so open to motivated people without paper qualifications and that simultaneously offers so much in terms of lifestyle and compensation. Whether it hires the best candidates is another question entirely, but that's an issue for the company, not for the applicant.
But, when I give an interview to an applicant and use my go-to question, which I initially feared would provide no useful hiring signal for being too easy (and which, yes, I've tested on all my coworkers, who solve without any difficulty), I find that only maybe a third of applicants complete it at LH or higher.
To be clear, I'm calling this out as a blind spot I have--there's clearly a massive gap in perspective here--but hopefully it'll provide a useful data point for why tech screens aren't universally hated and why they manage to persist.