<p>1) There is a lot of outsourcing. However, most big software jobs cannot be outsourced because they are too complex and need to be constantly modified and tested. It is not like you are going to make a complex game like you would do a simple cse 101 assignment. CS has more jobs than almost all other engineering disciplines combined!</p>
<p>2) You can be a programmer without going to school but not a computer scientist. The people who say that don’t know much about CS and I don’t think you do either. Ask any of the people who didn’t go to school to analyze a simple algorithm which is very very basic CS and they won’t be able to do it. You cannot be a good computer scientist without to school for it. CS != 100% programming</p>
<p>You are doing quite well with chemE, they also make more money than CS people or than any other undergraduate degree. CS has a lot more opportunity. Both degrees are hard, chemE is harder but CS is more time consuming. CS is mostly applied math and it can get intense at some schools. That’s why so many people can’t handle it. If I was you, I would stay with chemE and do a CS minor. Take a few more CS after graduating and then get an MS CS</p>
NJ/DE are pretty big on ChemE. If your internships are in petroleum, that explains why you’re going there.</p>
<p>
Anyone can make simple games like that. Not only does it get boring quite quickly, but it’s also a very simple task that anyone can do. There are far too many programmers with that kind of low-level knowledge. Knowing how to make programs for a more technical purpose will serve you much better.</p>
<p>
Unless you have a good reason, there’s no point in graduating early. A semester of paying debts is not really that important because if you make more money, it will balance out pretty easily.</p>
<p>
Now that’s not really something you can measure. Anything specific that makes you worried?</p>
<p>
Of course real work in one field is going to be less enjoyable than low-level learning exercises in another. When you start working on a real project, CS is 5% design, 5% writing, and 90% sitting around and being frustrated that your code doesn’t work (also known as debugging).</p>
<p>
Usually foreigners take jobs by working long hours for mediocre pay. If you’re a US citizen, you’d be well-served not to follow in their footsteps.</p>
<p>Maybe you could take Data Structures and then decide? That was the course that convinced DD that she did not want CS minor. </p>
<p>(In her case, part of the reason was it was tough to learn in a compressed 5 week summer course. But it was enough to convince her that CS was much harder than the java programming in her Arts/Sciences comp sci elective).</p>
<p>Thanks everyone for your helpful comments. I have made a plan for the fall quarter. I will take total 3 courses in CS-
Algorithm and data structure
Machine learning
Discrete Mathematics
and one course in ChemE and one in humanities.
If I like all the 3 CS courses, then I will definitely switch and say good bye to ChemE.</p>