Degree Programs

Love a challenge? You’ll love us

We offer programs that challenge you. And that’s a very good thing when you’re planning a career in solving challenging problems. With top faculty and some of the best career outcomes of any university in B.C., our programs set you up to make a real impact in your chosen field.

A host of opportunities await you, including:

  • Software developers/engineers who design, modify, develop, write, implement and test software programming applications
  • Big data analysts who analyze business needs and data from a variety of sources and propose viable and cost-effective solutions
  • Game, app and web developers who meet the needs of the enormous online, mobile and video game markets
  • Bioinformaticians – computer scientists who unlock patterns in DNA –
    who improve people’s lives by helping to create new "smart" drugs and vaccines

Got math? You'll fit in here.

If you have some programming experience and a strong math background, or no programming experience but want to build on your strong math skills, then you have the core skills needed to be successful in all our computing programs.

View requirements >


Co-op = "Land a Great Career 101"

Students are strongly recommended to take three co-op terms in your academic career to better define your area of interest and gain practical experience and valuable contacts. Crucially, you’ll also learn the secrets to impressing potential employers.

Learn more >

Computing Science major

Whether it’s BIG problems like understanding climate change and curing cancer, or the more playful problems of anticipating the next big thing in online gaming, our program is one of the largest and most diverse in Canada.


Is this program for you?

Looking for the flexibility to explore the huge breadth of the computing science field? Want to develop a wide range of skills related to computing science and the opportunity to specialize in one or two areas? The Computing Science program is tailor-made for you. You can focus or you can explore. The program is set-up to cater to either or a bit of both. We’ll work you hard, but you’ll thank us for it.

Dive deeper with Computing Science honours

If you want to take your computing science studies further and add research experience to your degree you can take additional courses to achieve an honours degree.


What you’ll learn

This four-year Bachelor of Science (B.Sc.) program is taught at SFU’s Burnaby campus.

By the end of year two you will:

  • have a better mathematical and logical thinking toolkit at your disposal than approximately 97% of people on the planet
  • know two or more programming languages
  • understand hash tables, stacks and object oriented programming
  • know how computers are designed
  • understand the basics of how software goes from an idea to a product
  • have improved your writing, critical thinking and other skills
  • have taken electives that broaden your education
  • be ready to start your first co-op placement

By the end of your degree you will:

  • have explored the range of concepts and topics that make up the computing science discipline
  • have had the opportunity to specialize in one or more areas through our six concentrations

Artificial intelligence

The study of the design of intelligent agents, artificial intelligence spans areas such as knowledge representation, natural language understanding, automated reasoning and machine learning.         

Computer graphics and multimedia

The demand for expertise in this area has greatly increased. Topics include graphical interfaces, modeling, rendering, animation, visualization, and multimedia design.

Computing systems

Computing systems is the foundation of every computing environment, including operating systems, data communication and distributed networks. The rapid growth of the Internet provides many new opportunities for graduates with a strong background in systems.

Information systems

Learn software engineering and database systems design to enable you to undertake the efficient and effective development of large software products. Learn about the design and management of computer information systems.

Programming languages and software

The increased size and complexity of many software products and solutions requires better languages and supporting software to help bring them to market.

Theoretical computer science

This area focuses on mathematical tools and techniques for the formal analysis of computer algorithms, and provides the mathematical basis for classifying the difficulty of solving problems and for demonstrating the correctness of solutions.

Software Systems major

By the end of your Software Systems degree you will have worked as part of a team on multiple software projects and will have built something cool and useful. You’ll be able to write beautifully clean code and create software programs and apps. In short this means you’ll have all the skills you need (and employers want) to launch a successful career.

Is this program for you?

View full details on Software Systems.

The Software Systems major program focuses on the development of high quality software for public and private industry. Classes are smaller,and the team-focused software development approach mirrors what you’ll experience in your future career. You’ll gain an understanding of the full software development life cycle, including testing and verification, documentation, and revision control.

Program overview

This four-year Bachelor of Science (B.Sc.) program is taught at SFU’s Surrey campus. The curriculum falls into three areas:

  • Software engineering: The study of how to effectively program as part of a group under realistic time and resource constraints. This includes high-level issues such as software architecture and project management, as well as low-level issues such as version control and best practices for coding.
  • Systems: The study of computer systems and the way they are organized, including software protocols. Knowing the capabilities of, and restrictions on, computer systems is a prerequisite for designing effective software.
  • Fundamentals: The study of mathematics, writing and theoretical computing. These are the foundations for any field of technical studies.

By the end of year two you will:

  • Know C, C++ and Java programming languages
  • Understand hash tables, stacks and object oriented programming
  • Work smoothly in teams to write beautiful code
  • Improve your writing, quantitative thinking and other skills
  • Understand how computing hardware works
  • Have taken electives that broaden your education
  • Be ready to start your first co-op placement

By the end of your degree you will:

  • Have polished your software design and construction skills
  • Have experience in Agile development
  • Know how to construct software that works on networks
  • Be able to make software work on embedded systems like a cell phone or camera
  • Understand how to conduct quality assurance

SFU-Zhejiang University Dual Degree Program in Computing Science

Mandarin is the most widely spoken first language in the world. Imagine being able to talk to a billion more people in China, the fastest growing technology economy on the planet? Or using your language skills and international experience to land a position with a huge multinational software company? This dual degree program lets you earn two bachelor's degrees – a Bachelor of Science from SFU and a Bachelor of Engineering from Zhejiang University – and includes two years of study in both China and Vancouver.


Is this program for you?

The dual degree lets you increase your career options and learn how to communicate across cultures. Just taking this program shows employers you are willing to do something completely different.


Program overview

View full details on the Dual Degree Program

The four-year program is conducted at both universities with students spending approximately two years in China, allowing ample time to become fully accustomed to the Chinese culture and language.

Year one: Spend a foundation year at SFU studying mathematics and computing science courses, plus some Mandarin studies for non-speakers.

Years two and three: Study in Hangzhou to complete the Chinese Immersion Program and take further Mandarin courses, along with other academic courses.

Year four: Complete the remaining upper division requirements of the program at SFU.