Computer Science and Engineering or Software Engineering: Which major should you go for?
Computer Science and Engineering (CSE) and Software Engineering (SWE) are two fields that feel the same for most students as well as the general public. However, while CSE is offered in almost every university in Bangladesh, Software Engineering is less popular and offered in a handful of institutions including Dhaka University (DU), Shahjalal University of Science and Technology (SUST), Islamic University of Technology (IUT), and so on.
Now, although both have a lot in common, there are significant differences between CSE and Software Engineering which are reflected in not only the curricula but also the industry.
How are the two majors similar?
CSE and SWE both share the same root – working with computers. Due to this, many courses are similar and involve learning the likes of algorithms, data structures, databases, or essential programming languages like C or C++. Students of both disciplines have to learn the theoretical side of computers, such as linear algebra and the theory of computation.
As both majors end up working with computers in different ways, courses involving these topics are common to both fields.
How are they different?
Despite the rudimentary similarities between CSE and SWE, the differences start to show at a higher level. SWE focuses more on software, basically the applied side of Computer Science. As such, rather than focusing on theoretical parts as much as CSE majors do, SWE majors focus on the practical side: how to develop software. They learn software development life cycles and different practices followed in the industry.
Sumaiya Islam, a third-year student from DU, says, "As a SWE major, I get to have much more time in building software than learning theories."
Shattik Banerjee, a final-year SWE student at SUST, also echoes her statement saying, "CSE majors have several theoretical and practical courses from Electrical and Electronic Engineering and Mathematics departments, which we don't have in Software Engineering. Our lab courses focus more on developing technical prowess needed in the industry."
Why you could consider SWE
"Software Engineering gives an edge to the students who are determined to get into the industry," says Md Sabbir Rahman, an SWE graduate currently working as an associate software engineer at Cefalo Bangladesh Ltd. "From our curriculum, we had many courses on the different aspects of software development, and we had to do projects based on our learnings."
Sabbir explains that being an SWE major helped him and his peers build a sense of intuition that improves the workflow of professional development projects.
"It's not like CSE graduates can't excel in these industries, but there is a qualitative difference," he adds.
According to many SWE students, Software Engineering is the better option if graduates are determined to get into the software development industry. They believe that because they don't have to deal with engineering aspects such as computer architecture in university, so their focus and passion aren't distracted and remain steadfast.
Wasif Uddin, a third-year CSE student at IUT and a remote software developer at MegaMind AI – a Canada-based company – says, "In hindsight, I would have probably been better off taking Software Engineering as a major instead of CSE. I would have loved to learn how software can affect real lives than know how semiconductors work."
Wasif believes that knowledge is always valuable to anyone passionate about it or who might require it in the future.
"However, for someone who doesn't want to learn about every nitty-gritty internal detail of how computers work, being forced to study such topics isn't helpful", he says.
Why you could consider CS or CSE
Simply put, students who are interested in the theoretical side of Computer Science should consider pursuing a CS or CSE major. Courses such as discrete mathematics, which focus on more abstract concepts like how a computer thinks logically, or digital logic, which explores how a computer stores information or does counting, are taught in CSE programmes. These are topics a student might be passionate about and can also delve deeper into while doing research activities.
While SWE students can also go into research, CSE majors tend to get into more diverse research fields due to their broad curriculum. As the CSE curriculum is more academia-focused than SWE, this works as an advantage for CS and CSE majors.
But, like with everything else, hard work and persistence are needed for excelling in higher studies, regardless of the major.
"Majoring in CSE doesn't give a student a magical upper hand over one who has majored in SWE," says Md Shihab Shahriar, a lecturer at the Islamic University of Technology (IUT) and PhD student at the University of Illinois Chicago.
As not many Bangladeshi universities currently offer an SWE major, Software Engineering graduates are low in number. This makes it increasingly difficult to pinpoint the stark differences between CSE and SWE. However, it can still be said that if admission aspirants are determined to get into the software development industry as soon as possible after graduation, opting for an SWE major is a good choice. But, if you are interested in learning about the nooks and crannies of a computer, consider taking CSE.
Bangladesh, as a country showing promise in many sectors, needs both kinds of engineers - software developers and computer scientists – to help build a better and brighter future.
Sadman Ahmed Siam is a student at the Islamic University of Technology (IUT).
Comments