Mechanical Engineering Bachlor's + Computer Science Master's?

Hi all!

I’m a rising sophomore engineering student at a major university, and I need some opinions/advice on my academic as well as career paths. Before college, I was thinking of studying mechanical engineering since it’s a very versatile major, and I had strong math & spatial visualization skills. However, I took some computer science courses my first year in college and did really well in them; I also really liked the possibilities a career in software engineering might lead to (graphics, artificial intelligence, computations, etc.).

Right now I’m contemplating on going into the software industry after graduation, but some aspects of the field (outsourcing / H-1B visas, ageism, and the exponentially growing number of cs graduates at my school) made me feel uneasy. Although I really enjoy coding and think I can do very well, I’m afraid I will eventually grow tired of keeping up with the latest technology and the competition from foreign/younger colleagues. I’m therefore hesitant to pursue a straight cs major.

Another option I’m thinking of is getting my bachlor’s degree in mechanical engineering (which I feel is a more stable field) while also honing my cs skills. My school has a one-year master of engineering degree in computer science, and I would be eligible for it by taking just three more cs courses (I would likely need only one additional semester to finish the program since I’m ahead in the curriculum). I know someone who is double majoring in MechE & CS with the intention of heading into robotics. As for me, rather than counting on finding the perfect job that combines both of these fields, I’m hoping more to have one as a backup. If I go down this route, I wish to work in software for a number of years, and if the career is no longer viable for any combination of reasons, I would still have a bachlor’s degree in engineering as a safety net, which hopefully could open more doors after some up-to-date training (whereas if I majored in cs, I would have to redo four years of engineering education).

My question is: does this MechE~CS plan have any validity in the real world? Does anyone have similar experiences/concerns? Or am I just being paranoid?

I truly appreciate any thoughts.

It’s not uncommon for MEs to take software/programming roles, depending on their background and experience, and BSME --> MSCS is also not an unusual route. There will be plenty of jobs available to you if you take that path.

However, don’t do it thinking the ME degree will give you a “backup” after years of working in primarily CS roles. Skills and knowledge have a shelf life, and a large amount of experience in one area can pigeonhole you. For example, the ME and CS combo would give you a great skillset for roles in robotics, but if you spend years writing robotic control algorithms, don’t expect to be able to jump into a mechanical design position afterward just because you have a BSME.

It’s good that you are thinking through this. CS is a whole lot more involved than just coding. It gets into a lot of theory etc. DD did well in her her intro cs class and hoped to get minor to go along with her econ degree. However a data structures class (sadly done in compressed summer course) convinced her otherwise.