<p>On one hand, I wish to become a software developer and work for a software engineering firm and program short little programs on my free time. The positive aspects of this path would be that I would have a greater job security, and it would also allow me to create side-projects for my own personal usage. But the problem here is, I am unfamiliar with research and development in the field of CS, which means I am not entirely certain with this major. </p>
<p>On the other hand, I also have an interest in researching antimatter and its potential usage in energy and transportation, and also in generating discoveries for science in new and recently-discovered fields as above. The only issue I have with physics would be that I may end up with a poorer job prospect than if I choose the field above, not to mention that in order to do any actual research I may have to pursue a masters of even a doctorate.</p>
<p>And I have great aptitude in both of these fields. At the moment I am taking AP Computer Science and AP Calculus BC (and I plan on taking Calculus III over the summer), and I've scored a 5 on my AP Physics B exam and a 4 on my AP Statistics exam, while also a 770 in the Math II SAT and a 750 on the Physics one. Thoughts?</p>
<p>Take Math+CS as your major. Since you said software development, having Math (or applied math or computational math) as the primary major gets you out having to take CS hardware courses (like digital circuits and upper-level computer architecture). This still allows you to take some physics courses to prepare for research. The Math/CS combo will prepare you for the software jobs.</p>
<p>For grad school, I would look into something like engineering physics which is more interdisciplinary in nature where you can do you physics research and if nothing pans out, you will still have a M.S./M.Eng in Engineering (Physics) which will look good for an experienced software developer.</p>
<p>Note that if a university is divided into divisions (e.g. College of Engineering) and CS is in the engineering division but math is not, doing a double major combination may be more difficult. In any case, when comparing universities, check carefully whether you will be able to fit in all of the desired courses for your areas of interest.</p>
<p>You could major in one of the subjects and take the courses of interest in the other subjects, rather than trying to fill in all of the blanks to collect the other major(s).</p>
<p>Why not cs+physics, like I’m doing? They pair together extremely well. Physicists do more programming than ever before, and the more advanced math skills give you a leg up against a lot of cs majors who may never have studied or used linear algebra, calculus, etc. much.</p>
<p>A lot of interesting software areas these days require more than standard CS major math.</p>
<p>I actually know a Physics/CS double major as well as a lot of Physics majors minoring in CS. I would highly recommend this if that is what you are interested in. People who go this route at my school seem to find jobs very easily in many different areas. I’m sure the course load must be pretty tough as physics alone is a very difficult major. However, if you start planning early, you should be fine. Just make sure to take a balanced schedule and not try to take too many difficult classes at once.</p>
<p>A full-blown cs+physics double major may not be necessary. The way my degree works is more like majoring in physics and minoring in cs but with a substantial core of the cs degree.</p>
<p>Important cs courses include a learning good software design methodology (emphasizing reusability, program correctness, layering, etc.), numerical methods, first-order logic, algorithm analysis, graph theory, you know–the fundamentals. Anybody can learn “programming.”</p>
<p>I have advised a number of students with either a Physics major and CS minor, a double degree in Physics and CS, or even just a straight up physics major who have successfully found positions in the software industry. A number of physics degrees these days include a significant amount of computational physics. Our program at IIT has had two required computational physics courses for over 20 years and students also have to take the required C++ general education computing course.</p>
<p>There are also a number of universities which offer a coterminal degree such as B.S. Physics + M.S. CS or vice versa.</p>
<p>Thanks so much everyone; that really helped! I want to pursue computational physics as a career so I’ve been considering both. But if my requirements are met by picking a minor, then I don’t see why not!</p>