Bachelor of Computing in Computer Science (with Honours*)

Life as a Computer Science student

Developing cutting edge applications. Studying the latest developments in AI and machine learning. Working with industry leaders in software, social media and gaming. These are just a few of the opportunities you’ll have as a Computer Science student at NUS.

With deep connections at leading companies, NUS offers a truly immersive Computer Science education. We pride ourselves on providing the strongest technical foundation available at any institution in Singapore, across all sub-disciplines of computing. Although our programme is well grounded in theory, we place a special emphasis on skills that matter to employers. As part of your education, you will build and develop applications, while learning the theoretical foundations of Computer Science that make it all possible.

The end goal of our Computer Science programme is to prepare candidates for a rewarding career as computing professionals. Our graduates have gone on to illustrious careers at leading companies, from Silicon Valley startups to Wall Street banks. Our project-based approach means that you will build a portfolio that you can showcase to employers to demonstrate your achievements as a software developer and engineer.

A career in Computer Science gives you the opportunity to build the future. Your NUS education provides the foundation you need for a career at the cutting edge of technology.

Solve real-world problems with algorithms

Create the latest Augmented Reality game

Develop innovative software applications

Master the intricacies of cybersecurity

Build expertise with flexible elective options

Our Computer Science programme offers a wide spectrum of electives across many sub-areas to give students the flexibility to build up expertise for different job domains:
Big Data Management and Engineering
Study the fundamentals of storing, managing and processing enormous amounts of data that are distributed across different systems. Learn how to build efficient distributed systems that are able to handle large amounts of real-time data for data mining and machine learning. Example of courses for this area include Big Data Systems for Data Science, Neural Networks and Deep Learning, Algorithms for Big Data, and Cloud Computing.
Full-Stack Software Engineering

Become a well-rounded full-stack software engineer with expertise in both front and back-end technologies. Learn how to design appropriate database tables and write efficient queries in Database Systems, prevent malicious software attacks in Software Security, speed up computation in Parallel Computing, and design friendly and pleasant-to-user interface in Interaction Design and User Interface Implementation. Take project-based courses, such as Software Product Engineering for the Digital Markets, and develop a software product from start to end.

Artificial Intelligence and Robotics

Discover the principles behind the decades-long effort in making machines as intelligent as humans, and learn how machines represent knowledge, make plans and decisions, sense and understand the world, as well as learn new knowledge. Choose from at least 10 electives that range from the fundamentals (e.g. is a problem learnable?) to the applications (e.g. natural language processing, computer vision) of the field.

 … among many others!

Widen your horizon through a Double Degree, Double Major, or Minor programme

Students can also apply to do a Double Degree (e.g., in Computer Science and Mathematics/Applied Mathematics/Business Administration), Double Major (e.g., in Mathematics), or even a Minor (e.g., in interactive media, or management). For further information, visit our Undergraduate Programmes catalogue.

[*subject to meeting requirements]

Sampler of Courses

CS1101S Programming Methodology
Experience our unique ‘gamified’ introductory programming course where you take on challenging missions to level up and occasionally meet Sumobots, Jedi Knights, and Darth Vader.

CS2106 Introduction to Operating Systems
Understand how different processes end up in a deadlock via the adventures of dining philosophers who starve because they cannot coordinate the use of their chopsticks.

CS2107 Introduction to Information Security
How are websites hacked? Are there unbreakable codes? How are human vulnerabilities exploited in social engineering attacks? Decipher and master the intricacies of IT security.

CS2104 Programming Languages
How do you design a programming language? How do you get the same programme to run on different hardware? Delve into the languages of the future!

CS3230 Design and Analysis of Algorithms
How do you design blazing fast applications? Can some well-known problems be solved quickly? Prove that and you will win the first Millennium Prize and a million dollars.

CS3243 Introduction to Artificial Intelligence
How do you build Skynet? How can machines beat humans at board games? Discover how cutting edge developments in computer science have enabled machines to gain human-level intelligence!

CS3247 Game Development
Learn the underlying principles and theories that you will use to make the next great game that captures the world’s imagination!

What You Could Be

  • Software Engineer at Google
  • Computer Security Researcher at DSO National Laboratories (DSO)
  • Full Stack Developer at DBS Bank
  • Machine Learning Engineer at Grab
  • Game Security Engineer at Ubisoft
  • Data Scientist at Shopee
  • Start-up Founder