I'm currently in HS and is going to be applying to an university in Fall 2011 (Graduate HS in 2012). I like math and computers, and hope to get into this field.

I need to choose between CS and CE. I've been told by people (who definitely do not come from a CE or CS background) that it's easier to get a job with a CE degree. I also have a CE graduate telling me that CS is to much about theory.

I've also been told that CE is more hardware oriented while CS is focused on software. I wish to go into software more than I wish to go into hardware.

My questions are the follows:

  1. Is CS significantly more difficult than CE? Or vice versa?
  2. Which will give me a better job offering in the future

As for universities, I'm currently looking at Waterloo and Queens (Canadian), is there any picking on that front? I know that waterloo has a pretty good CS program (top in canada i believe), but is there any reason not to go there?


First off let me say I have a BS in CS. And your friend is correctly CS focus a lot on the theories of computers (i.e. algorithm complexities) which involves quite a bit of math. So if you like computers and math you'll feel at home with CS.
From having friends in CE while I was a CS I agree that CE lean more toward the hardware of computers (i.e. circuits, electrical) while CS focus on the software side.

To answer your questions:

1) In my opinion CS and CE are equally as tough. One is not significantly harder than the other.

2) Having either a CS or CE degree will set you up in the future. I'm not quite certain about CE but with a CS degree its not that hard to get a job.