1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Picking up CS major very late in the Physics game?

  1. Jun 21, 2013 #1
    I have currently completed the requirements for my Physics BSc major and have completed a math minor and only have two classes left to complete my CS minor. This late in the game I have been doing a lot of thinking and have decided that graduate school in physics seems like the wrong path for myself. Instead I would like to pursue a career where I preferably would use both knowledge from physics and CS but would also be satisfied working in an unrelated software field.

    I am wondering what you all think of completing a CS degree with my Physics degree. I know it is VERY late in the game to be making this decision, which is what worries me. Would it be better to get both degrees or finish the Physics one and then pursue the CS degree? I mean, my degrees would be segmented if I continued into CS, but why not just keep going when I am allowed to take the classes?

    I have heard much about people with a Physics B.S. getting into software and CS related fields, yet I imagine this is only so when the proper skill set is present. Clearly this skill set isn't completely derived from a Physics degree and some outside studying of language and algorithms is needed, so would it be better to at least have the coursework to show for this?

    On the other hand, would be better to try and pursue a Masters degree in CS. I have heard these programs aren't as competitive as Physics. Would the B.S. in Physics and M.S. in CS be a better combo?

    Thank you very much, I appreciate any feedback.
    Last edited: Jun 21, 2013
  2. jcsd
  3. Jun 21, 2013 #2


    User Avatar
    Gold Member

    Obviously, it will cost you more money. Have you been taking out student loans? If you have, then you'll be in quite a bit of debt after you're through.

    If you're just wanting to get a programming job, then I believe you have the background to learn a few languages and get your foot in the door somewhere as an entry level programmer. However, if you want to move into research, then you'll need a graduate degree.
  4. Jun 21, 2013 #3
    How hard is it to pick up a CS major with the time you have left? It's probably not worth extending your time in college just to get the double major. The most important skills of programming can only be learned from working on projects, so just taking courses to take courses isn't that useful (of course, they can impart a lot of specific knowledge that can be hard to learn otherwise).

    Having a physics background can be an asset depending on the job you apply for. It shows you have mathematical skills, and can understand and work with mathematical models. Some CS majors can't do those things very well. Having a physics B.S and a CS M.S would probably look good. But if you can skip the masters degree and go straight into the job market, that is almost certainly better.
  5. Jun 21, 2013 #4
    Thank you for the replies. I feel underqualified for a programming position, but have found a few jobs in my area that specified that a physics degree would suffice for the position. Junior software development, simulation, etc. I guess now I have to make a choice as to which languages I need to learn or specifically improve on. I know Python, C, and Java, and will have more training in Java before I graduate.

    I have always wanted to go into research, but would quite honestly like to take some time and find a job in industry and work a few years before deciding to go back to school and further into debt. I thank you for the sobering advice. As nice as it would be to sit by and take more classes and get a CS degree, I don't have the money.
  6. Jun 21, 2013 #5


    User Avatar
    Gold Member

    You might feel under-qualified, but I'd leave that distinction to the hiring committee with whom you're interviewing. You might be just what they're looking for. :smile:

    The languages you've listed are good ones to know. I suggest adding a scripting language or two, such as JavaScript, PHP, or Perl. If they aren't a specific requirement for a given position, they are incredibly useful tools that will allow you to be more efficient at work.

    You're welcome! I wish you the best of luck in whatever you decide. :smile:
  7. Jun 21, 2013 #6
    I think its a good idea to get the CS degree. It could easily pay for itself. There are many jobs that explicitly want a CS degree. I think that people with physics degrees struggle to compete with people trained in CS for these types of jobs.
  8. Jun 22, 2013 #7

    D H

    User Avatar
    Staff Emeritus
    Science Advisor

    This is an intentionally out-of-order response.

    How late? Are you graduating the end of this summer? The end of the fall semester? Next spring? You didn't say. If it's the end of this summer, I would say that that "VERY late" is too late. The die has already been cast. There's a good deal you can do if you are graduating in December, a whole lot more if it's next May. I'll have more to say on this later.

    Most CS majors can't even program. That's why software companies typically ask fresh-out job candidates to do things like write a function that reverses a string in place or write a program that prints the numbers from 1 to N, in order, except numbers that are multiples of 3 or 5 are replaced with a string: "Fizz" for multiples of 3, "Buzz" for multiples of 5, "FizzBuzz" for multiples of 3 and 5.

    As far as mathematical and physical reasoning goes, saying that most CS majors can't do those things very well is an understatement. From my experience, it's almost all CS majors except those few who minored in physics or engineering. There are a slew of jobs out there for which the ability to program is an essential but nonetheless secondary skill. First and foremost is the ability to do mathematical and physical reasoning.

    As I mentioned above, there are a slew of jobs where the ability to program is an essential but nonetheless secondary skill. That it's secondary suggests that a minor, rather than a major, is all that is needed. A double major requires a lot more work but has little reward.

    Your "on the other hand" is a much better option. Nowadays, having a masters degree is a good part of what distinguishes Joe Blow from Susan Extraordinary. Getting back to my original question (what do you mean by "VERY late"?), here are some things you can do if you are graduating next May:
    • If your school has a senior thesis option, take it. Do your thesis on some aspect of computational physics. Recruit a CS professor as to server as a co-advisor on the project. If your school doesn't have such an option, perhaps they have an independent study option.
    • Develop contacts in your CS department. Your physics department is most likely clueless about helping their undergrads land a job with only a bachelors degree. Your CS department is a bit more clueful in this regard.
    • Hit your college's job fairs next fall and next spring. You either want to land a full-time permanent job that will pay you to get an advanced degree or you want to land a paid internship so you can bank money to pay for that advanced degree. In this new economy you do want that advanced degree. A properly paid internship means you are making as much in three or four months as a TA makes in an entire year.

    One final thought: Have you thought of getting an MBA? Those few who know the technical and business sides of business are worth a lot. Those very few who know the business and can manage it are worth a whole, whole lot.
    Last edited: Jun 22, 2013
  9. Jun 22, 2013 #8
    basically what I meant, but I didn't feel I could state it as strongly. Every major employer will have an experience of interviewing/hiring a top CS student only to find they are a terrible programmer. Just get some experience (d h has some good suggestions above)
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook