Questions about MechE and CMPE?

A few days ago I was having trouble deciding which engineering field I wanted to go into. After narrowing it down Im stuck between these two.

MechE because:
Allows me to do work in BME (which I want to do), good job security, Decent/Great pay with experience and has a lot of Opportunities in various other fields,.

CMPE because:
I find it intriguing, the pay is nice, theres a good job outlook, is more creative (software engineering).
*only thing with this is I have no prior coding experience

Which field requires more math?
Is it difficult to find Internships in CMPE (I heard it may be)?
Which one has more lucrative opportunities (like which one after 10-20 years of experience can be more lucrative)?
Which engineering field out of these two holds more opportunities in general (not related to pay)?
I understand that ME can work in a lot of different fields, can the same be said for CMPE?

If you want software engineering, CS is a better choice than CPE. Computer Engineering has a partial focus on hardware instead of solely software.

First, here are the things that all the things listed in this thread share:
They are all pretty lucrative - deciding off that wouldn’t be worth it IMO
They more or less have similar amounts of math, but the level of applicability of each varies

I’m not a full engineering expert, but you might want to recheck that BME from MechE is really actually an easy jump.

As xray said, CS is software engineering, computer engineering often isn’t. Would you consider CS?

Prior coding experience usually has little to no meaning by the end of college - a significant number of people come into CS even without ever writing code.

While it’s probably a bit more specific (CE vs ME), if you are looking at CS rather than CE, CS is probably the broadest of the three.

To clarify a few things that @PengsPhils mentioned:
BME can involve work relating to ME, ChemE, EE, CS, and biology/chemistry. Consequently, individuals with backgrounds in all these fields have a place in BME.

CS is not software engineering–I think @xraymancs was saying that, if one were interested primarily in software engineering, CS was a better way to go about it than CE. CS often involves software or programming, but CS is not about writing software or programming. The core of CS is the principles, math, and algorithms underlying computing. Software and programming are just means to that end. In software engineering, on the other hand, the software and programming are the end.

I disagree that CS is the broadest of the three. A CS major, though they may need to understand mechanical/electrical principles for certain jobs, will not find themselves designing mechanisms or building circuits. EEs (and, by extension, CEs) and MEs may find themselves programming and writing software, on the other hand.

@AuraObscura

It depends on what OP means by broad - I was thinking more the industries that you could get involved with after graduation, not interdisciplinary. I was going based off of “can work in a lot of different fields”. In the activity sense, I agree that CS is probably the strictest.

@PengsPhils
I see, that makes sense. I’d generally agree with that.

@AuraObscura is correct about my statement. CS is not software engineering, nor is it programming. However, if that is the career you plan to pursue, then CS is a good, but not the only, place to start. In fact many CS departments across the country are linked to mathematics departments. My point was that if you study CE you should expect to be heavily involved in computer hardware and digital electronics. If that is not your interest, CS is a better choice.

On the question of being broader or not. I have found that core CS curricula are often light on science. Engineering in general has more science but a specific engineering discipline is broad within the confines of the discipline, be it BME or ME, or CE. If you want real breadth a physics curriculum offers that but is often harder to sell to employers even though a modern physics curriculum includes scientific programming, mechanics, statistical mechanics, electrodynamics, electronics, and quantum mechanics. Many of our physics majors at Illinois Tech successfully find work as software developers, they just have to sell themselves the right way. of course, if thereis a job which requries an engineering degree, then that is what you should have to compete.

@xraymancs @PengsPhils So what Im getting from all of your replies is that CS is better if you want to go into software/programming (which is what I thought CMPE was). So if I want to be a software engineer or programmer CS would be better?

@Ajpat123

Correct. I also agree with the other posters that CS isn’t strictly software engineering (and in fact has a wide range of subfields). It is probably by far the most common field for postgraduation, particularly with the nice market out there right now. No one can say if that will last, but tech is never going to go away. The salary will probably go down as more people enter the field, but there should still be good money there.

Something to note: CS is an outlier - it’s not really an engineering in the sense of the others. CS doesn’t have the physics/chemistry/biology foundations that most of the other engineering’s share at least one of. Even the more comprehensive CS programs usually only require one of them, and many require none at all.

What that means is that there isn’t a path that ME and CS really share from the start, so you would either need to pick one or go in two slightly varying directions for the start of college. For at least the first semester, I would say take both and see which one you enjoy more.

@PengsPhils thanks for clearing it up man.