I'm currently enrolled in a MechE course, at my third year, and it took a long time to discover that this is not the major for me. In my spare time, I've been learning electronics (Arduino) and programming, and I decided that I like this stuff better than my MechE classes. Most of my interest resides in programming: both embedded and software. I know that a CS degree is more appropriate if I'm looking for software engineering positions, but to be honest the CS program at my college is pretty bad, while the EE carries more prestige. Also, I would transfer a lot more credits for the EE program, so I'm decided to make the switch. I just want some opinions on this: ultimately, my goal is working with software at some major tech company. I do like embedded, but I've heard that embedded developers earn far less than software engineers and job positions are few and far between. Is this true?