Quoted from robertmee:
So unless you're a History major, college degrees are more about a foundation, but you have to build on that the rest of your career.
This so much...
Getting a job is more about proving ability - not reusing what you were taught in college. In my era of the nineties... we were in the phase of “everything is moving to software..”. So as a EE, all the work was in software, and very few chairs for actual hardware folks. Same applies today... there is work that is very specialized and hard to fill... but there are wayyy more jobs available in software still.
And your ability to work in the current technologies and hot topics is far more important than your pedigree of degree. People want quick ramp up and quality output.
If you know you want to code...and are fine with that... stay CS and focus on project work and experience more than pedigree. Consider who the school is a feeder to and where internships and what work outside school is accessible while there.
The problem with CS is there are a gazillion of them and differentiation is hard.
An engineering degree will allow you to work in nearly any field. Plus, you can still take Coding classes to scratch that itch.
It usually boils down to someone trying to chase a special type of work... and how much they are willing to sacrifice to get it (wait, move, pay, etc). Or go into a much bigger pool and then fight off the competition... but starting can be easier.
We called mechanical engineering “pre business”... because it was the discipline most engineers switched to before they dropped out of the engineering school entirely and switched to business majors
TL :DR - CS is fine, but don’t rely on your degree to land a job