Try to do your best, in high school, aim for A's in everything. While your at that, try to also, join any clubs, like student government, ect. Once it is time to apply to college, If you followed the previous instructions, try to apply for an undergraduates degree in "Information Technology" or "Computer Science". Good college suggestion would be MIT, Texas A&M University, Columbia University, NYU (New York University), Cambridge University (Great Britain), and Arizona State University.
Once you get into any of those, again try to be on top of your game, at getting the highest grade. While you are at it, try to join engineering clubs like, "IEEE" or "ACM". These two clubs are very good clubs, especially if you become one of the board members of those clubs in those colleges. It will stand out in your resume, and show that you have experience, in working with other people.
Most important of all, aside from college work, try to get internships related to your field. This will show that you have work experience, and will also standout. When going for an internship, try to get it at the company you want to work with, after you graduate. In your case, that is, "Facebook". Showing that you have had an internship in Facebook, will tell them that you already know, how things work, in their work environment, and what is expected from you hen you do your work.
You should also, go for certification exams during the summer, like the "CCNA", which is sponsored by Cisco, and is for IT professionals. Being certified, shows to the employer that you can be trustworthy when doing your work, and that you know what you are doing. Having a degree does not prove that you can do any job that comes in front of you. There are college students who just go to get a degree and in the end, don't know what in the world they are doing.