technosexSoftware is a HUGE landscape and every company, market, and subdiscipline of engineering will look at your resume differently.
Yeah, you can work in virtually any market in some capacity, and I think that's relatively unique to this field and an understated advantage.
Jobs pay well, offer amazing perks, and are really easy to get. Companies actively recruit you because there are massive shortages of people with computer skills, and that gap is projected to increase dramatically in the next decade.
In terms of CS vs. CE, my degree is actually Computer Science and Engineering :) My more CE-focused classes tended to include some electrical engineering and hardware topics - I think of that as everything from circuits and signals to somewhere around assembly language. CS is more software and algorithms, but solid software development definitely requires an engineering mindset.
If you do any engineering or science field, you will need to learn a lot of math. CS is more discrete math, EE/CE are more calc/differential equations. Life is easier when you learn your math regardless of what field you go into.
I also want to caution that taking an intro programming class is not a good measure of whether you'll like the field, or even programming. Most intro classes make problem sets have clean inputs and just work. The real world is full of messy data.
Additionally, while I think CS is an excellent career path and I probably wouldn't do things differently, it can (and will, if you're doing it "right") be a grueling process that can make you hate your life. Interviews will frequently ask you to talk about projects you do in your "spare time." There's an expectation (that's slowly changing) that when you're done with your CS schoolwork (lol), you turn around and do...more CS! In most other science/engineering fields, having research on the side for a few semesters is a major perk. That disregard for personal time can also extend to the workplace - but as I said, you can do almost anything with a CS degree.