• Forum
  • Lounge
  • Computer science vs software engineering

 
Computer science vs software engineering

Long story short, I have less than 18 hours and 45 minutes to decide what I'm going to study for next 4 years - computer science or software engineering. Which one would you choose (or have chosen) and why?

Of course, differ between universities and even more between countries so it would be great if you could give me some links about programming related studies at your local universities (list of courses and modules, or something like that). Just want to compare with what i'm going to study.

And one more question: have you ever used any math you learnt in the uni (mathematical analysis, algebra and geometry, etc)? I have a choice between two study programs and one of them is math-heavy and I think it might be a waste of time.

Thanks for answers!
Last edited on
I went with CS. At the time, because I hadn't even looked at the software engineering curriculum. If I was making the choice now, I'd still go with CS because it has no non-CS courses (at my university, software engineering has a few courses on legislation and management).

And one more question: have you ever used any math you learnt in the uni (mathematical analysis, algebra and geometry, etc)?
Yes. One time I wanted to normalize the speed of a particle along an arbitrary curve [0;1]->R2, basically changing f(t) into f(g(t)), such that the speed of f(g(t)) was constant. It turned out that g was (IIRC) the inverse of the integral of the norm of the derivative of f.
I find myself using tons of math when doing things with graphics.
Last edited on
I'm studying CS.

Broadly speaking, CS is more abstract and SE is more practical. A CS course will focus more on data structures, theory of computation and algorithms. An SE course will focus more on the design, development and maintenance of software. They overlap a lot, though.

Which you choose depends on your priorities. If you're prioritising employability, I would go with software engineering: it tends to be looked upon favourably because it's an engineering discipline and it's less common. There's a stigma that many CS grads can barely program.

I picked CS and would do so again because I'm really interested in the theoretical aspects. Of course employability is important as well, but it's not my main priority; I mostly want to enjoy what I study.
closed account (z05DSL3A)
I started on Software Engineering but transferred to Computer Science after the first year. The Uni I went to ran the Software Engineering course from the School of Engineering (it was a BEng). The main difference between SE and CS was that you have more choice on the CS course.

SE you had to do modules for Engineering Mathematics, Software Engineering (there was a module of this each year), and some management stuff. CS had a lot less in the core modules and allowed you be as broad or focused as you wanted, it was also ran from the School if Mathematics and Information Science as a BSc.

I found Software Engineering quite dull.
They're both identical to be honest. Computer scientists are primarily concerned with the design of algorithms, languages, hardware architecture, systems software and applications software.
Software engineering has the same math as computer science and you'll learn much more about creating high-quality software in a systematic, controlled, and efficient manner.
Software engineers are trained in all aspects of the software life cycle, from specification through analysis and design, to testing maintenance and evaluation of the product. They are concerned with safety and reliability of the product as well as cost and schedule of the development process.

So you can see how identical they are, choose what's best for you and if you're concerned about future career options, well a software engineering graduate has the option to work in many different sectors such as telecommunications, finance, health care, manufacturing, retailing, security, transport. As for a CS graduate, well computers are everywhere. Telephone, television, networks depend on complex and extremely reliable software. Vehicles, ships, aircrafts, and satellites are all controlled by computers. The booming entertainment industry with video games and movie animation that today flourishes the world, also has a large demand for programmers and designers. Finding a job anywhere in the world is very very very easy as a CS graduate or SE graduate.
Last edited on
Well, I decided to go with software engineering which was a random choice (yeah, I used http://random.org to decide my future). Both courses are similar and beginning with 4 course there are many optional courses to choose from.

If anyone interested, this is what I had to choose from (pages are in english):
SE: https://klevas.vu.lt/pls/pub/public_ni$www_progr_app.show?m=psp&p_pad=11&p_k=en&p_fm=1&p_apr=1288&p_str=12870
CS courses. The first one is more practical, second is the real computer science course
https://klevas.vu.lt/pls/pub/public_ni$www_progr_app.show?m=psp&p_pad=11&p_k=en&p_fm=1&p_apr=1284&p_str=14099
https://klevas.vu.lt/pls/pub/public_ni$www_progr_app.show?m=psp&p_pad=11&p_k=en&p_fm=1&p_apr=1285&p_str=14102

I'll know whether I was accepted to any of these courses on Friday. Since CS is least popular I'll probably get accepted to it
closed account (j1CpDjzh)
I'm most likely going for Computer Science, because I've heard that it offers a lot of opportunity. If you change your mind on being one thing, there's still a lot more options. I don't really know much about Software Development though, so my opinion's probably a bit biased.
To some degree, it depends on what you want to do with your degree. I want to get into AI research, so comp sci was the clear choice. Software engineering (at my school at least) focuses more on business than the pure comp sci curriculum does.
You need to undertand Computer Science before you can understand Software Engineering.

An analogy is, you need to understand Newtownian Physics before you can understand Civil Engineering.

They are not the same thing. You need to be a Engineer to do it at scale.

Just understanding computer science is not suffficient for designing large systems, in much the same way as understanding mechanics is not sufficient for building a bridge that carries commercial traffic; but you can't build a bridge unless you understand mechanics.
Last edited on
Topic archived. No new replies allowed.