Even a short stint and an "Ex-Googler" tag on your resume is enough to open doors and keep landing gigs years into the future.
Moreover the top firms are known for engineering the shit out of their software. You're much less likely to run into really bad code or stagnate.
So its definitely worth sacrificing a bit to try and get in.
If you want to have "made it", go start a startup. Being an employee generally means working 40-60 hour weeks for other people's dreams.
Don't know maybe I'm not elite founder material.
Unless the start up had something to do with politics, and you learned a lot about politics, you can't use any of your skills(related to actual work) to 'come out ahead' in a big company.
I'm a team lead and make less than an entry level developer at any SF or NYC shop, but I'm willing to bet that I can save more and have more put away for retirement than most as well.
It could be a bit of a lifestyle change (or maybe you're already close and you don't know it!), but for people with software-developer-level salaries, early retirement is absolutely within reach.
Or just move to a country that doesn't allow worker exploitation like that.
what working for somebody else means is (among others) peace of mind - I do my hours, extra effort if necessary, but that's it. the moment i leave office, I can go climbing with my fiancee, take care of kids (not there yet), and generally do stuff I wil have fond memories of, rather than chasing gazillionth thing just to keep things running.
Not everyone wants to work on developing consumer App/Product, marketing and sales. There are people who would like to work on libraries, algorithms or just a large swat of data. I'm sure people developing React, Angular, Bootstrap, TensorFlow etc are happy with what they are doing.
How do you they could get that many slaves to build the pyramids?