Careers in programming

How does it fare as a career. I’m thinking about getting a science/engineering bachelors degree and then going with Computer Science as a bachelors.

I’m also considering law school.

How do I prepare myself for a career in computer science, and what part of the field has the best fiscal oppertunities.