1. Not finding help here? Sign up for a free 30min 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!

Courses Mechanical Engineer switching to CS or Electrical

  1. Aug 4, 2017 #1
    I'm on a sticky situation right here. I have almost completed my third year of a mechanical engineering degree and I'm just now realizing that I would prefer working with embedded systems/software. This happened after I start toying around with an Arduino and learned C and Python for fun's sake.

    I don't dislike my course, but right now I see myself more like working with code and software than designing gears and bolts. I have two options: I could move to a CS degree or a Electrical Engineering degree. I would rather switch to EE, because I would be able to transfer most of the disciplines that I have already completed (things like Calculus I, II and III, Linear Algebra, Physics, Solid Mechanics...), and I wouldn't postpone my graduation too much. As for the CS course, I would only transfer way less disciplines (just calculus I and physics). Also, the CS course on my college is not that good, and the EE is good indeed.

    My goal is to work with software development (and embedded systems). I know that it's easy for EE's to start working with software, and I've searched Google, Microsoft, Intel careers and found that they do indeed offer positions both for EE's and CS's as software engineers. But yet, maybe a full CS degree would be better for my career.

    So, do you have any tips? It's true that I could get into software development easily with a EE degree? Or would I be better off going for a CS (even if that would take far more time)?
     
    Last edited by a moderator: Aug 4, 2017
  2. jcsd
  3. Aug 4, 2017 #2

    berkeman

    User Avatar

    Staff: Mentor

    I'd recommend going the EE route, but be sure to pick up some important CS classes as electives like Compilers, Data Structures, Database Fundamentals, etc. Once you have those fundamental CS classes, you will be able to whatever you want as an EE with an interest in Embedded Systems.

    Say, that sounds a lot like my background... :biggrin:
     
  4. Aug 4, 2017 #3
    Do you work with embedded systems? That's cool! I'm learning C and Assembly right since I've learned that those two languages are essential for embedded.

    Now, as much as I like embedded, I would like to have the option of working with other kinds of software also. I would like that flexibility. Maybe a EE major complemented by some fundamental CS classes would give me enough background to do that? I've been viewing some job offers by companies like Google and Intel for software engineers, and some of those say that the offer is for: "BS degree in Computer Science, similar technical field of study or equivalent practical experience." I think EE would fit in there?
     
  5. Aug 4, 2017 #4
    Also, I have the option of switching to Computer Engineering. I see CE as being like a middle-ground between CS and EE, and it seems like a CE graduate could fill any position that requires a CS graduate.
     
  6. Aug 5, 2017 #5
    Following this. I'm entertaining thoughts of switching my degree from ME to Computer Science. I'm interested in Big Data and Machine Learning, and based on projects that I've been developing at college, found out that programming satisfies me more than mechanical design.

    My doubt is if it would be smarter to finish my degree (I'm two years away from graduating) and pursue a Master's at CS after or just switch right now.
     
  7. Aug 5, 2017 #6
    Just wondering, how will you be able to pursue masters in such a different field? Won't your research suffer since you do not have the fundamentals? (I'm asking because I'm not sure how people with different backgrounds can enter different Master programs)
     
  8. Aug 5, 2017 #7
    It's possible, but I know it's difficult. I could have electives on core CS topics like algorithms and data structures while in college, so I would have an easier time switching fields. At least, that's how I would do it. I've seen people with backgrounds in EE switching to CS, not sure about ME.

    I'm just afraid to switch courses right now, after all, I'm 2 years from graduating. I don't know if that would be a smart move.
     
  9. Aug 6, 2017 #8
    I've seen people switching from EE and CompE to CS (in Master Degree programs, I mean), but I'm not sure about ME's. Anyway, it seems like Software Engineering is a "open-minded" field for people with non-CS majors, it seems. I've seen biologists and physicists working as software engineers after school, so that's very possible.
     
  10. Aug 6, 2017 #9
    From what I hear, you can be a terrific programmer without a CS degree, because CS is the kind of subject that you can learn by yourself. The most important topics, in my opinion, would be data structures and algorithms. Actually, that's the kind of thing that you get asked on interviews.

    But the problem would be getting my very first job, because I would have no previous work experience and would have to convince the HR people that I am a competent software engineer if I don't have a CS degree. I'm of the opinion that any kind of engineering degree prepares you with problem solving skills that are useful in software development, and it also proves that you can learn.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted