Google is very Java-centric and positions focusing on JS tend to assume you'll double as more of a web designer than a JS-focused engineer doing more application/deeper-UI intensive type stuff (and IMO, it shows in their JS). I'm not aware of Google making a lot of use of Rails or PHP for anything. V8 binds JS to C and C++ and any large company with the breadth that MS or Google has will need those languages for lower-level stuff so there's some potential there. I would start by looking at the sorts of roles that come up the most often and focus on those but they really, really, really have a thing for Java and will continue to have one for a long time given all the legacy code they now have to support written in Java. And I suspect a Java dev without college would be at a huge disadvantage trying to get a gig at Google.
But take that with a grain of salt. I haven't seriously looked at Google in the last 3 years or so, so things may be changing. They're also huge and have diverse needs so you never know what might come up.
Facebook? On a side-note the PHP/C thing strikes me as being potentially interesting to Facebook since they're the reason that actually exists and they've got good cause to be sympathetic to youthful prodigy-types.
Regardless, you're going to need to pick up some professional experience. It's awesome that you've been learning this stuff since you're 12 and that could count a lot with the right interviewer but there's basic teamwork and communication skills that only comes from being on the job. You can know everything about every language you know but you'll still find some things only come with experience if you pay attention to devs that have been at it for a while professionally.
But really the best thing you can do is keep a close eye on the sorts of roles that come up at both companies as you build up enough of a body of work and get some more experience. It doesn't hurt to apply either. Just don't get bummed out if it takes a year or two before they start responding. If you ask for feedback, you might actually get it through virtue of people finding it interesting that you're trying to get such an early start in your career. Take it seriously. Especially if it comes from Google. They put a lot of hurdles in their interview process.
There's a difference between working for a very large elite company and a very small lesser-known one doing really interesting stuff. Explore that difference and you may find you prefer the latter to the former.