- About
- Schools
- Study
- Research
- News & Events
- Contact
Software Systems Bachelor of Science
Overview
Software Systems (SoSy) is an applied area of computer science that focuses on teaching the skills to develop high-quality software.
Developing software is the foundation of many careers in industry. Software is integrated into every area of our daily lives from web browsers to computer games. It runs in our cell phones, our cars and our transportation systems.
SoSy is a practical, hands-on program delivered through lectures, team projects and a capstone project. Graduates have a solid understanding of the software development lifecycle from specification through development and verification and on into maintenance. They have experience writing larger scale software with a commitment to professional quality code construction.
Students can apply for direct admission into SoSy when applying to SFU, or students can transfer into the program from other departments. Computing science majors who wish to transfer to SoSy can easily do so after completing their 1st or 2nd year requirements. By completing the program, students earn the degree of B.Sc. Software Systems.
school
description Major
calendar_month 4 years
Program at-a-glance
The Software Systems program provides skills, knowledge and thought processes necessary for professional software production, while also providing a broad background of various computing systems that graduates will encounter in their careers.
Years 1 & 2 - Learn the fundamentals of computing systems, design, analysis, and theory. By the end of year two, students will know one or more programming languages and will understand object-oriented programming.
Years 3 & 4 - Learn more complex components of software architecture, project management, computer systems, as well as design.
What You’ll Learn
This four-year Bachelor of Science Software Systems (B.Sc.) program is taught at SFU’s Surrey campuses. The Software Systems curriculum is divided into three areas: Fundamentals, Systems and Software Engineering.
Fundamentals
The study of mathematics, writing, and theoretical computing. These are the foundations for any field of technical studies.
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.
Software Engineering
The study of how to effectively program as part of a team 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.
Capstone Project
SoSy also includes a two-semester long capstone project where a student's team implements a significant software system in close collaboration with a faculty member. These projects are competitive to get into and showcase one's mastery over one (or many!) areas of software development and computer science. The capstone project is something the student can be proud of at the end of their degree! Learn more
Meet Our Students
I applied to SFU's Software Systems program because of its focus on the practical side of computer science. With a robust curriculum and strong co-op program, I knew it would allow me to gain the skills and experience I would need to be industry ready once I graduated. Now partway through my degree, I can confirm that Software Systems fulfills all the promises above while also having wonderful professors and strong sense of community that has made for a fulfilling university experience.
Career opportunities
The world is changing rapidly and so is the full range of career opportunities that await. Armed with the necessary knowledge and skills, graduates pursue careers in jobs such as:
- Chief Information Officer
- Chief Information Security Officer
- Chief Operations Officer
- Chief Technical Officer
- Computer and Information Systems Manager
- Game Developer
- Interactive Media Developer
- IT Project Manager
- Senior Quality Assurance (QA) Analyst
- Software Engineer
- Software Developer
- Systems Architect
- Web Designer
- Web Developer
Other program options
- Computing Science Major (Bachelor of Science or Bachelor of Arts)
- Computing Science Dual Degree Program Major (Bachelor of Science)
- Computing Science Second Degree Major (Bachelor of Science or Bachelor of Arts)
- Software Systems Major (Bachelor of Science)
- Computing Science Honours (Bachelor of Science or Bachelor of Arts)
- Geographic Information Science Honours (Bachelor of Science)
- Computing Science and Linguistics Joint Major (Bachelor of Arts or Bachelor of Science)
- Information Systems in Business Administration and Computing Science Joint Major (Bachelor of Business Administration or Bachelor of Science)
- Mathematics and Computing Science Joint Major (Bachelor of Science)
- Molecular Biology and Biochemistry and Computing Science Joint Major (Bachelor of Science)
- Mathematics and Computing Science Joint Honours (Bachelor of Science)
- Molecular Biology and Biochemistry and Computing Science Joint Honours (Bachelor of Science)
- Computing Science Minor
- Computing Science Co-operative Education Program
- Computing Science (Post Baccalaureate Diploma)
- Computing Studies (Certificate)