Since you mentioned Google, I’d like to give out some facts about the FAANG:
Facebook has an RPM program… both industry (internal employees, designers, engineers, consultants, investment bankers, etc.) and new grads compete for it and go through the same recruitment process so can be very competitive
Apple - doesn’t hire PM out of college, they will hire EPM (engineering PM) out of college but you’ll likely require a technical background
Amazon - only hires MBA new grad PMs
Netflix - doesn’t hire new grads
Google - hires for APM, about ~50 per class, 25 coming from their intern class. Extremely competitive…
As for Uber, Twitter, Lyft, etc. their APM intern classes are about 5-8 new grads. Compared to the >200 new grad software engineers they hire each every year.
New grad APM recruiting is tough, honestly, there are a lot of very qualified students out there.
If you’re from Australia, Atlassian hires a lot of a new grad PMs. Microsoft hires a lot of PMs as well, but typically come from a technical background.
If I were you, I would focus more on completing personal projects and obtaining PM internships while in college and worry less about choosing the correct major. If you’ve completed actual PM internships, you’ll be 100 times more likely to get selected for an APM interview than if you majored in business as opposed to computer science.
My involvement in personal projects in college—such as leading teams of engineers and designers to develop an app used by thousands of students—was the reason I was able to secure every PM internship I ever applied for.
Start interacting with PMs in business to determine what abilities you should hone. While you’re still in school, launch a business that fills a need. Attend classes on business and product design (ui/ux).
My recommendation is to pursue a technical major while still making time for extracurricular activities (like starting your own thing and side projects). On the job training is available for business skills, agile, metrics, etc. Once you’re employed, you won’t have the time to advance your technical knowledge (take an algorithm class, understand data structures, etc.). Understanding the technical underpinnings of things will benefit you throughout your career as a PM and open additional options for you (e.g. at places like Google). If you are aware that technology isn’t your strong suit, I wouldn’t worry about it. I wouldn’t stress if you know that technology isn’t your strong suit, but I would focus more on gaining experience and honing your non-technical PM skills (i.e., it will be crucial that you understand product design, comprehend and create UX/UI, have completed your own personal projects, develop your product vision/intuition, etc.).
Make sure you aren’t doing PM because you believe you can’t design or that engineering is too difficult. I believe that a lot of it is occasionally imposter syndrome, and PM can be greatly exalted in the eyes of college students.
Before investing a significant amount of time in pursuing a career in PM, be sure you have a clear understanding of both its advantages and disadvantages. Discuss it with other professionals in the field (not just former interns) to find out what the drawbacks are and whether you’re alright with them.