Two of the common questions my students ask me most of the time are: “What’s the difference between Computer Science and Software Engineering degree?” and ” which option should I choose between the two”
In this article, I’ll share my opinion and give you my own quick analysis on these degrees
Computer science encompasses the study of computers and computational systems. Computer scientists may generally theorize and calculate aspects of software and software systems in the design and development phases.
Additionally, computer scientists may study and work in areas of the field that focus on artificial and machine intelligence, computer networks, security networks and monitoring systems, database systems, user interaction, mathematical analysis, programming languages and theories regarding computing and processes.
While computer scientists may also study principles of software engineering, this field of study is typically the only shared characteristic between computer science and software engineering.
Software engineering applies the standards and principles of engineering to design, develop, maintain, test and evaluate computer software. A software engineer may also be referred to as a computer programmer, software designer or software developer as the nature of software engineering can require knowledge of programming languages, principles of software design and building.
Software engineers may also be the programmers who test and perform quality assurance checks on new and developing software to ensure its efficacy and efficiency in its real-world application.
Software engineers may also be familiar with theories surrounding software use, however, working with theories typically may not fall under the job description, as computer scientists are the workers who construct and test theories about programming and operation.
Having understood what these two majors or degrees entail. It is now time to take a look at their respective curriculum from some of the best Universities in Kenya.
I will choose University of Nairobi and Jomo Kenyatta University of Agriculture and Technology simply because UON has one of the best undergraduate computer science programs and JKUAT has one of the best postgraduate software engineering programs
Semester 1 – Year 1
Semester 2 – Year 1
Semester 1 – Year 2
Semester 2 – Year 2
Semester 1 – Year 3
Semester 2 – Year 3
Semester 1 – Year 4
Semester 2 – Year 4
The minimum requirements for eligibility into the Master of Science in Software Engineering is: Holders of a Bachelor’s degree in Computer Science/Computer Technology/Information Technology, Mathematics and Computer science, and Electronic Engineering of at least Upper Second Class Honours of JKUAT.
Semester 1 – Year 1
Year 2 – THESIS
Semester 2 – Year 1
From my research, I didn’t get a good match of undergraduate degree in software engineering that’s why I settled for post graduate degree in software engineering. I know of Strathmore university and Egerton University which offers undergraduate degree in software engineering though very scanty information is provided on their curriculum
As you can see, there isn’t a huge difference between the two degrees. In fact if you are keen enough, you will realize that University of Nairobi has incorporated a lot of S/W Engineering concepts in its Computer Science degree.
The most common job graduates get after earning their Computer Science or Software Engineering degree is Software Developer or Software Engineer. There are other related options as well, such as Product Manager, QA Analyst, and Technology Consultant. Your options will depend on your specific skill set.
When it comes to the requirements in math and statistics, Computer Science and Software Engineering are almost identical. They cover combinatorics, probability and statistics.
The core computer science requirements are similar as well, ranging over algorithms, data structures, and operating systems.
The key difference are that:
I think it mostly depends on your preferences. In short:
Here is my opinion. University of Nairobi with its particular set of program requirements, Computer Science is a better choice if you want to be a software engineer.
Typically, what an employer looks for in a software engineer candidate is the ability to write solid code and build interesting projects, as well as computer science fundamentals including data structures and algorithms.
I think the best way to cultivate this skill set is by quickly learning computer science fundamentals, and spending your own time practicing solving problems and writing code.
Based on the curriculum for Software Engineering and based on how busy engineering students tend to be in general, I think it would be harder to do this with Software Engineering than with Computer Science.
Another benefit of University of Nairobi’s Computer Science program is that it allows more computer science electives. This is great as well because depending on what’s in demand in the job market, you’ll be able to adjust your courses. For example, if mobile app development is in demand, you can learn that. And if parallel computing is in demand, you can focus on that instead.
I’m sure there are some benefits to learning software engineering fundamentals (project management, design, testing, etc.). But I would personally rather take flexibility over a predefined set of skills. That’s why I think Computer Science is a better degree to become a software engineer with this particular curriculum.
Of course, that’s just my opinion, and this is just one particular university. I’d love to hear about your opinion and what your experience was like if you majored in either Computer Science or Software Engineering. Please let me know in a comment below.
Note 1: Different universities have different requirements for these two degrees. This article should be a good starting point, but you should still take a look at the program requirements at the university you’re interested in attending.
Note 2: Most Kenyan universities don’t even have a Software Engineering degree. For example, the University of Nairobi as we have seen has Computer Science degree, but not Software Engineering. But it does have a software engineering concentration within their Computer Science program.
If the university you’re interested in going to doesn’t have a Software Engineering major, I would suggest you go with Computer Science if you want to become a software developer. Computer Engineering is more focused on hardware than Computer Science or Software Engineering, so it’s less directly related to a typical software developer’s job.
Learners Coach is an online learning platform that provides a one stop solution for learners, teachers and education providers. It bridges the wide gap between information searchers and information providers by connecting them together. Depending on your location and field of your career, we have different information products and services to meet your requirements. We provide the optimum and customized courses, information products and training solutions
This Free Diploma in Project Management Course teaches you how to implement project phases like…
Hi Learner, you will be taught everything you need to know about Construction Project Management…
Alison’s Free Online Aptitude Test With Questions and Answers will help you quickly demonstrate your…
We will teach you everything you need to know How To become A Software Developer…
The success rate of Therapy Program For Autism and Down Syndrome is around 70%. Studies…
In this article, We will teach you everything you need to know about How To…