Difference between Software Engineering and Computer Science?

In summary, Warren is thinking about switching to Software Engineering from Computer Science because he thinks it would offer more programming and classes on actual Software Development. He is also worried that if he does not switch, he may miss out on a lot of interesting things.
  • #1
mr_coffee
1,629
1
hello everyone.

I'm coming to realize I'm not enjoying Computer Science, but I do enjoy programming and that is what I want to do once I graduate. I've had hardly any classes on Software Devlopment or programming I'm a Jr now and have only taken intro to proramming and intermediate programming, and yet tons and tons of math.

Coming into this major I thought Computer Science was the same as Software Engineering but now I'm realizing they arn't. I also thought the major would really hit you hard in programming which it isn't.

I checked at the university in Canada, waterloo and they actually fall into 2 different departments entirely. It says Computer Science is in a Math department, while SE is in Engineering. I don't like math, so why am I in a math intensive major? I've gotten all A's in all my math classes, Calc I-3, Diff EQ, matrices, etc but I don't enjoy doing it.

I realize Software Engineering would also have to do math, but I'm thinking maybe it wouled offer more programming and more classes on actual Software Devlopment, Methods, etc, rather than just giving me a few programming courses and the rest math.

My college doesn't offer Software Engineering and I am a Jr. so switching colleges may seem pretty drastic but if i graduate as a CS, would I be missing out on a lot if I didn't switch to become a SE? I also heard a lot of the SE majors arn't even accredited majors, meaning they havn't been around long enough to see if it even passes as a real major.

What I want to do with my life after graduation is Software Devlopment of some kind, not sure what, but in that field and later I would like to get into more business.

Any info would be great!
 
Last edited:
Physics news on Phys.org
  • #2
Honestly, if you "don't like math," or cannot at least be bothered to survive a couple of years of it, you shouldn't even consider a technical profession at all. Go into business or real estate or something.

- Warren
 
  • #3
Well I'm already done with 90% of the math, all I need is 2 more stat classes then I'm done. So I've already surived the math so im' not going to change that now, and I can do the math I'm saying I just don't like it.

It just seems like Software Engineering is more like applying the knowledge to design the best software possible and computer science seems like its all math and programming is just secondary.

On the wiki website they said,
Computer programming is also a useful skill (though not always necessary) for people who are interested in computer science. Whereas software engineering is interested specifically in making software, computer science tends to be oriented towards more theoretical or mathematical problems. But note that the boundary between the two disciplines is not always very clear.

Theoretical things and math is what I don't like, but it seems Software Engineering doesn't focus on that but is it true?

Maybe i'll find out what I really want to do once I get an internship but I was just wondering if anyone knows any Software Engineering students or is one, and can tell me why they picked it over Computer Science.

Thanks
 
Last edited:
  • #4
Well, there is always a lot of overlap, as that quote indicates. For example, if you are going into software engineering, you'll almost certainly take a course in compiler design, which should have a decent amount of formal language theory in it. Every software engineer should know some complexity theory as well... at least enough to recognize when an algorithm is reasonably efficient, and when it isn't.

Most of the people I knew when I was in grad school for computer science were good programmers. But I do say *most*... some couldn't really program much at all.
 
  • #5
Thanks, I think I just need to get out of school and get in the market and from there I can branch off into things I'm interested in regardless if I'm a SE or a CS.
 
  • #6
It's my opinion that if you do a pure software engineering degree you will miss out on a lot of interesting things. I mean, if you just want to program you can do that with an associate's degree. If you're going to work as a programmer then you'll have your whole life to get experience with lots of programming. You want to get as much theory as you can while you're still doing your degree.

Anyway if you're mostly done with the math, and that's what you dislike, then don't switch. All you'd be saving yourself is 2 courses of math that you don't like, while going through all the hassle of transferring and getting course credits approved and getting a "software engineering" degree? It's just a name. Do the rest of the math (and try to enjoy it), then take the courses you like until you graduate with CS. CS seems more respectable than SE to me, though I guess I have not talked to anyone who is doing an SE degree or seriously looked at any SE programs, so I might be under a misapprehension.
 
  • #7
Thats a good point Ortho I never thought of it as that. In the market I won't learn any of the theory like you said, only in college so that does make sense. That makes me feel more motivated about the upcoming classes at least and I'm sure it will help me problem solve much better. I think I just need to do outside of class programming projects, I would be if i had more time but break is coming up so it will be a good time to start at least.

THe job interviewers always ask, well what type of projects have you done and I think to myself, well i havn't programmed in about 2 years...thats what got me about the CS major, they give you 2 courses of programming your freshman year (C++), then sophmore and jr. year nothing at all, but that's when you want to get your internships.

I believe they are finally changing all the courses to give more programming to the CS majors I think they are adding C systems programming and Java client/server programming which will be nice, now I hope they let me take the new courses.
 
  • #8
Mr_Coffee, I really think that doing computer science rather than software engineering is a good thing. For you to learn to program will not be difficult, but for a software engineer to make the step up to the math-oriented theory is surely more difficult.

I am in the position that, with hindsight, I know I should have done computer science rather than the degree I did (Information Technology). Making that step is proving difficult for me because I don't have a foothold, so whatever I read only leaves me with more questions, and the maths seems very divorced from anything I have learned.

I have considered returning to university but I can't spare the time, so I'm trying to self-study myself (ultimately) into a better position, where I am not merely a software developer with experience, but a developer who also has a solid grasp on philosophy and mathematics and how they impact on software development.

Perhaps I am more philosophical than most, which might be why when I read about such things as set theory, I find myself asking questions like whether using the powerset axiom to generate all sets is legitimate, how one can justify it as anything more than ad hoc.

So I really think one should do the more theoretical work at the beginning, then learn to apply it, rather than learning the context within which to apply one's knowledge without knowing what to apply.

Even though you say you dislike the math work, it sounds like you do well at it, which means it will have an impact on your future work. Stick with it, get it done and I think learning to program will be no great challenge.
 
  • #9
mr_coffee said:
Thats a good point Ortho I never thought of it as that. In the market I won't learn any of the theory like you said, only in college so that does make sense. That makes me feel more motivated about the upcoming classes at least and I'm sure it will help me problem solve much better. I think I just need to do outside of class programming projects, I would be if i had more time but break is coming up so it will be a good time to start at least.

THe job interviewers always ask, well what type of projects have you done and I think to myself, well i havn't programmed in about 2 years...thats what got me about the CS major, they give you 2 courses of programming your freshman year (C++), then sophmore and jr. year nothing at all, but that's when you want to get your internships.

I believe they are finally changing all the courses to give more programming to the CS majors I think they are adding C systems programming and Java client/server programming which will be nice, now I hope they let me take the new courses.

You haven't had classes like data structures, algorithms, compiler design, etc?
 
  • #10
It really depends on the institution - you should check the course syllabus.
 
  • #11
Maxwell no, not until sr. year

Thanks for the tips guys
 
  • #12
Coming into this major I thought Computer Science was the same as Software Engineering but now I'm realizing they arn't. I also thought the major would really hit you hard in programming which it isn't.
----------------------------------------

I think it is the same, do not be mistaken for the Computer Engineering. CE is completely different program, it is a Hardware Computer program=engineering.

Your university does not offer Computer Software program, actually they do, it is Computer Science.

Let's go back; Computer Engineering is an OLD Electronics Engineering Program, a low voltage studies. While, Software Engineering is Computer Science=Computer Programming if you wish to say so.
 
  • #13
mr_coffee said:
Maxwell no, not until sr. year

Thanks for the tips guys

Are you kidding me? Those classes Maxwell listed are freshman through junior level courses at my school! Aren't, at least data structures and algorithms, pretty close to the basics of comp sci?

Then again, I have a friend who's going to Princeton, and the curriculum he has to follow is much more lax than what I have to follow at my state university. It's interesting to see his schedule full of almost entirely gen ed classes with the occasional math course, while I'm generally taking 2 to 3 comp sci courses a semester in addition to various math courses and what not. (I think Princeton requires more math classes for the major than mine does though, as mine doesn't require Calc 3 or Differential Equations while I THINK Princeton may)

And as for an interesting side note, my school's comp sci curriculum offers more courses on computer hardware than the EE curriculum at my school.
 
  • #14
if its true what you have said about comp sci offering more comp hardware courses than EE then I think all electrical engineering departments should be shut down and all student to run away.
 
  • #15
budala said:
if its true what you have said about comp sci offering more comp hardware courses than EE then I think all electrical engineering departments should be shut down and all student to run away.

It's not many more (like 1 or 2 classes more) and I'm not sure at what level each deals with the material, but my school's EE department is primarily focused with VLSI, power supplies/sources, conservative design, and carbon nanotubes. I can't say how that compares to other schools, but I definitely didn't really see the possibility of getting deep into comp design until grad school had I stuck with the program. I assume the comp sci hardware courses deal more with the theory behind the hardware, they certainly don't deal with design.

That said, the students pretty much have been running away. In my grade (sophomore year), there's only a bit over 10 left after starting with a class of 30, and that's with a recent infusion this year of about 6 or 7 transfer students. The mechanical, chemical, and civil departments at my school are all in between 20 to 40 students. Most of the EEs have switched out for physics or comp sci (I switched out for both), though of course there were also a few who just up and said "I can't handle this math stuff at all" and dropped out or switched to majors like business and biology. I'm not sure if that kind of drop out rate is typical of EE programs at engineering schools, but I find it rather surprising.

There also seems to be quite a bit more hostility from the engineering students (as a whole, not just EEs, though the EEs tend to have a better opinion of them) for the EE professors than the professors of other disciplines. In general, they're regarded as poor teachers and not nice guys. I don't have experience with all of them, but of the two I do I'd say one it does hold true, and the other is a very nice guy, though he does put the burden of learning severely on the student. I don't criticize him for that, it actually helped me realize that I don't quite care for circuit design, and would prefer to learn more about the theory behind electronics than just the implementation. It puts a new perspective on a subject when you're almost entirely expected to teach it to yourself, have 10 hours of homework every week and 10 hours of lab work (including the lab write up), and cover about one and a half chapters a week. I've done that kind of time writing programs, and I've done that kind of time just going over various proofs (well, probably not 20 hours in a week there), but I found I enjoyed those whereas I found circuit design to be a boring and barely bearable exercise. So yeah, I wasn't cut out to be an EE, especially when the primary focus of the department is designing new, more efficient power sources; which is definitely outside of my core interests.
 
  • #16
Sounds like you need a new school, Fox5.

I have to say, though, that 10 hours of homework a week is completely unexceptional; I'd be surprised if any serious class required less.

- Warren
 
  • #17
chroot said:
Sounds like you need a new school, Fox5.

I have to say, though, that 10 hours of homework a week is completely unexceptional; I'd be surprised if any serious class required less.

- Warren

haha, riiight. At least 10 hours a week for one class is a lot. My professors typically say 2-3 hours for every hour in class (labs are an exception and usually require more time).

Do you think students that have 5-6 classes (including labs) spend 60 hours studying OUTSIDE of class? A lot of people have part time jobs also and don't have the time to spend 75-80 hours on studying/class.

Typically, I find it reasonable to spend 6-8 hours a week outside of class on average for a single class (even for many hard classes).

I've always considered myself a hard studier, but I don't study at least 10 hours a week outside of class, for every class.
 
Last edited:
  • #18
Perhaps my perspective is a bit skewed by my graduate classes -- some of which have required 15-18 hours a week from the average student.

I don't think, in general, that 40+ hours of study and homework time per week is exceptional for an undergraduate with 15 hours of class. It certainly wasn't when I did my undergraduate.

- Warren
 
  • #19
Actually Data structures/Algorths is offered next semester ( so that would be jr. level) but there is no programming invovled its just like part 2 of descrete math, but more applied to Computer Science rather than just general number theory.

But I'm not sure what I would be considered anymore, I'm not going to graduate until 2009, and I started school in 2003, had to stop school in 2004, went back in 2005.

I'm glad though because now I get to take the modified CS plan. It offers a lot more programming coures because a lot of students weren't ready their senior year to take Operating Systems or Compiler construction after not programming since Freshman year.
 
  • #20
chroot said:
Sounds like you need a new school, Fox5.

I have to say, though, that 10 hours of homework a week is completely unexceptional; I'd be surprised if any serious class required less.

- Warren

The 10 hours a week of homework wasn't so bad, but it was a bit surprising for a 2 credit course. The course material was always very crammed together and the professor's teaching of it wasn't much more than "here's some formulas, now memorize them" without even derivations or conceptual reasons for why they worked as such. The 2 credit course (a quarter course though, so essentially 4 credit workload) was taking up about 20 hours of time per week on its own altogether, while being taken concurrently with 3 other 4 credit classes. It was by no means an impossible workload, nowhere close to it, but it was enough to make many question "could I enjoy doing this type of work for that amount of time for the rest of my life, or even the next few years?" A heavy workload isn't a problem if I enjoy the work I'm doing.

Of course, now that I switched to a dual major in comp sci and physics, and I'm way behind in the comp sci curriculum, I can probably look forward to heavy workloads for the rest of my undergrad degree, I'm taking 21 credits next semester and will have to credit overload for at least 2 more semesters, in addition to taking summer classes to catch up (in order to catch up on the comp sci curriculum next semester, I'll be falling behind on my math and gen eds); assuming I want to graduate in 4 years.
 
  • #21
Ya dear,, Computer Sciences is a part of math department and Software Engineering , obviously, is a part of engineering. but programming is the same of both. one can enjoy computer sciences as well as software engineering if he/she has some interest in coding/programming. hey one thing here,, maths have become bored Computer sciences.
 
  • #22
Most people don't like math, but there are plenty of people working in computers. You do the math.
 
  • #23
I'm sorry, but I have to ask... is there some fluke of the UI here that I'm not seeing that periodically causes people to answer three year old threads? Because it seems to be a common occurrence, and I'm wondering why.

I'm not intending to make fun of anyone here... so apologies if it's taken that way. I really am just wondering why it happens.
 
  • #24
I think it's called the "search" feature and some overlooking of the often hard-to-see date/time stamp.

The administrators should probably lock threads when they don't have responses more recent than a year, month, or week ago.
 
  • #25
TMFKAN64 said:
is there some fluke of the UI here that I'm not seeing that periodically causes people to answer three year old threads? Because it seems to be a common occurrence, and I'm wondering why.
You are assuming ifti used the PF search engine to find this 2 1/2 year old thread. Given that this was ifti's first post (and most likely last post; we have a plethora of post-once members), here is much more likely explanation: ifti ran across this 2 1/2 year old thread via a google search (or some other search engine). If you look at https://www.physicsforums.com/online.php" , you will see the vast majority (~95%) of the people online are not registered users. They are (anonymous) guests -- plus a few not-so-anonymous spiders. It is that infestation of spiders that invites the newbies to necromance old threads.

That said, Google does a bang-up job of indexing this site, IMHO a much better job than does the vBulletin software upon which PF is based. If I want to do a broad-based search for some topic in PF I typically do a site-restricted google search rather than using PF's search function.
 
Last edited by a moderator:

FAQ: Difference between Software Engineering and Computer Science?

What is the difference between Software Engineering and Computer Science?

Software Engineering is the application of engineering principles to design, develop, and maintain software systems, while Computer Science is the study of computers, including their design, development, and use in solving problems.

What skills are required for Software Engineering and Computer Science?

Software Engineering requires skills such as programming, project management, and problem-solving, while Computer Science requires skills such as programming, algorithm design, and data analysis.

What are the job responsibilities of a Software Engineer and a Computer Scientist?

Software Engineers are responsible for designing, coding, testing, and maintaining software systems, while Computer Scientists are responsible for conducting research, developing algorithms, and creating new technologies.

Do Software Engineers and Computer Scientists work in the same industry?

Yes, both Software Engineers and Computer Scientists can work in a variety of industries such as technology, healthcare, finance, and government.

What is the career outlook for Software Engineers and Computer Scientists?

The career outlook for both fields is strong, with a high demand for skilled professionals in the industry. However, the job roles and responsibilities may vary depending on the specific industry and company.

Similar threads

Replies
1
Views
842
Replies
6
Views
2K
Replies
8
Views
3K
Replies
17
Views
2K
Back
Top