> One of the best pieces of advice I received in life was this: don't sell yourself short. Try, strive, and then let other people reject you. But never reject yourself. And if others reject you, stand up and try again. If they hit you harder, then get up quicker and hit back harder.
This is great advice and it's been how I live my life, and it's revealed so many opportunities to me that I never thought I would have.
With these big 4 and unicorn onsites, though, that attitude didn't reveal new opportunities to me. It confirmed all of my worst suspicions about how people behave and how big tech companies operate. People actually are going to discriminate against me. These big companies actually are a socioeconomic monoculture. The circumstances of my birth actually will cause people to deny me opportunities regardless of how hard I work to prove them wrong. There actually is a glass ceiling.
I guess I had to get here eventually. It just feels terrible. I spent 8 months preparing for these interviews while working full-time, I aced Facebook and Instacart, aced 4/5 at Google, and got 5 rejections and 0 offers.
The engineer I ate lunch with at Facebook went to a top school. He literally told me that when he interviewed for his internship, he was asked only 1 coding question. It was Three Sum, which is a very well-known and easy question. That got him inside and he converted it to a full-time offer.
Why does he get in based on 1 easy question, but I get asked ~7 algorithms questions, write asymptotically perfect solutions to all of them, and get rejected?
The most frustrating thing about this is all the sacrifices I make in life preparing for this and trying to break through, despite truly not knowing whether it's even possible for me to get accepted by these people.
If they are discriminating, they don't say "we're literally never going to hire you and it's for reasons you can't ever change, so you're free to give up." I would feel better about that because at least I would get my evenings and weekends back. But they would never say that, they'll just keep encouraging me to sacrifice all my evenings and weekends for the rest of my life until I give up and blame myself.
So I'll never receive any signal for when I should stop. I'm just perpetually stuck in this mode of having my entire personal life on hold trying to get into companies that simply don't hire people like me regardless of technical performance or merit.
I've spent 30 unpaid hours per week over the last 8 months studying for this and I have nothing to show for it. It's not like knowing how to invert a binary tree on a whiteboard is transferrable and benefits me elsewhere in life, this is completely trivial and useless knowledge for me. It's not worth anything to me anymore, it's a thousand hours of unpaid overtime devoted to passing technical interviews that I then pass and still get rejected anyway.
And I honestly don't know what else to do now other than to continue giving unpaid 30-hour weeks to Google and Facebook's recruiting processes. What else am I supposed to do? That's where all the advancement is, what else is there for me to do?? Am I supposed to just accept my lot in life like a pauper in feudal Europe? Where is there any happiness to be found in just accepting this?
This is pretty much unrelated to the original topic, but on the off chance that it will help you in your career, I'll do my best. I've done a lot of hiring in my career. I've encountered a lot of people who come to interviews with the same kind of attitude that you express in your messages. I realise your interview-face and your complaining-on-the-interview-face are different, but I've never met you and I have no way of giving you good advice based on who you actually are, so this will have to do.
Trying to get a job at a big 4 or unicorn: my first question for you (which you don't have to answer out loud) is why? Why would you go after that job? What makes you think this is the best for your career? If you were interviewing with me, you are already on the back foot. The reality of the situation is that these places are not any better than anywhere else. In fact, you have a much better chance of getting a crap job in one of these behemoths than in a small, focused, unknown company -- because there is no way to hire X-thousand good people. Internal infighting and politics means that entire divisions will be rotting away. To be fair, there are going to be gems inside those big, rich companies and those gems will be very bright, indeed. But unless you are being headhunted for those departments, you are unlikely to get in. You are better off making your name elsewhere. That you don't know this, makes me think that you are young, naive and lack real world experience. It makes me think that if you get a job in one of these famous places you will be unsatisfied because your internal view of them is completely out of whack. Remember -- I don't know you and I'm extrapolating dangerously from what you have written. But also remember that an interviewer is doing exactly the same thing with the hour that they have to chat with you.
The fact that you spent 30 hours a month studying to get into these companies makes me question your motivations even more. If you had said, "I spent 30 hours a month learning cool stuff", or "working on an awesome side project", or pretty much anything else that could also make people interested in you I would have been impressed. I would also be happy for you because you would have something that nobody can take away. Instead you wasted your time doing things that are trivial to you. You lack good judgement. If you write asymptotically perfect solutions for 7 algorithm questions and don't display a completely nerdy love of algorithms, then that's going to be a massive knock against you.
Look, I could go on, but that would just be kicking someone when they are down. That's not my intention. I don't know how many programmers there are in the "big 4", but we're talking about tens of thousands. There are millions upon millions of programming jobs in the world.
Programming is a boring, stressful, thankless job. People who have no idea what you do are going to yell at you for being slow, stupid, and incompetent. Manipulative, self-important sociopaths are going to blame you for all of their mistakes. You will make 2-3 times the wage of a firefighter, nurse, teacher or insert-ridiculously-difficult-job-that-actually-saves-peoples-lives-here and you will be spending your time wresting with CSS to make a bloody column line up (because if you don't get it done by Monday, the whole company is going under). And despite making ridiculous wages compared to the rest of the population it will never be enough to "put up with this crap". Trust me!
If you don't do this job because you love it, then you will be miserable. If your goal in life is to get status, or make money, then find a job more in keeping with that goal. But if you want to be a programmer, than find something you love and do it. Be the best you can possibly be. Be happy. And, strangely, at that point I think you will find the big 4 (or whatever) will be beating down your door to scoop you up.
And to answer your question: Why do those other people get scooped up right out of school. Mainly because they are easy going, confident and look like they will be super fun to work with. Nobody hires new grads because they are "good" (because, with very few exceptions, they aren't).
This is great advice and it's been how I live my life, and it's revealed so many opportunities to me that I never thought I would have.
With these big 4 and unicorn onsites, though, that attitude didn't reveal new opportunities to me. It confirmed all of my worst suspicions about how people behave and how big tech companies operate. People actually are going to discriminate against me. These big companies actually are a socioeconomic monoculture. The circumstances of my birth actually will cause people to deny me opportunities regardless of how hard I work to prove them wrong. There actually is a glass ceiling.
I guess I had to get here eventually. It just feels terrible. I spent 8 months preparing for these interviews while working full-time, I aced Facebook and Instacart, aced 4/5 at Google, and got 5 rejections and 0 offers.
The engineer I ate lunch with at Facebook went to a top school. He literally told me that when he interviewed for his internship, he was asked only 1 coding question. It was Three Sum, which is a very well-known and easy question. That got him inside and he converted it to a full-time offer.
Why does he get in based on 1 easy question, but I get asked ~7 algorithms questions, write asymptotically perfect solutions to all of them, and get rejected?
The most frustrating thing about this is all the sacrifices I make in life preparing for this and trying to break through, despite truly not knowing whether it's even possible for me to get accepted by these people.
If they are discriminating, they don't say "we're literally never going to hire you and it's for reasons you can't ever change, so you're free to give up." I would feel better about that because at least I would get my evenings and weekends back. But they would never say that, they'll just keep encouraging me to sacrifice all my evenings and weekends for the rest of my life until I give up and blame myself.
So I'll never receive any signal for when I should stop. I'm just perpetually stuck in this mode of having my entire personal life on hold trying to get into companies that simply don't hire people like me regardless of technical performance or merit.
I've spent 30 unpaid hours per week over the last 8 months studying for this and I have nothing to show for it. It's not like knowing how to invert a binary tree on a whiteboard is transferrable and benefits me elsewhere in life, this is completely trivial and useless knowledge for me. It's not worth anything to me anymore, it's a thousand hours of unpaid overtime devoted to passing technical interviews that I then pass and still get rejected anyway.
And I honestly don't know what else to do now other than to continue giving unpaid 30-hour weeks to Google and Facebook's recruiting processes. What else am I supposed to do? That's where all the advancement is, what else is there for me to do?? Am I supposed to just accept my lot in life like a pauper in feudal Europe? Where is there any happiness to be found in just accepting this?