If you want build a solid foundation on CS, I would suggest taking a course in Applied mathematics with some CS related subject because that would allow you to understand the deep fundamentals within CS. These mathematics (discrete, probability, linear algebra, proof techniques) are generally covered in Bachelor's level of CS. Having sufficient skills with these topics will allow you to dive and understand any topic later in life. As engineering major, it was mostly focused on calculus and analysis. Therefore, whole idea of theoretical proofs and reasoning was quite difficult for me. CS is filled with these kinds of proofs. No one tells it.
However, if you are interested in building things, it would be wise to pursue something in software engineering (or applying for challenging job etc). Like everyone has said here, CS is to go into some deep niche like compilers, OS, networks, algos & DS, which is extremely narrow, intellectually fulfilling but extremely hardcore. Good luck with your decision.