BCIT's Computer Systems Technology (CST) two-year diploma program combines computer systems theory with hands-on practical experience in software development. You'll learn software engineering and programming from industry professionals, and gain experience working on real projects, from concept to deployment. In second year, specialty options add depth and further hone your skills.
The CST diploma is a widely-recognized credential that is highly regarded by employers. Graduates emerge with the well-rounded skills essential for a career analyzing, designing, and developing software solutions.
The CST diploma program is right for you if:
As a CST graduate, you'll be able to:
Do you have credits from another BC/Yukon post-secondary school? Do you want to know if they transfer to courses here at BCIT? Check out BCIT's Transfer Equivalency Database to find out.
The CST Diploma is a two-year full-time program.
The first year of CST introduces the core skills and theory used in all areas of software development. Web development, programming, scripting, and computer architecture are all introduced. First year culminates in students working as part of a team to build an application of their own design.
The second year is comprised of:
Students have a choice of option courses, however, there is limited space in each option, and first year grades are considered for option approval.Note: availability of options is subject to change, and some options are not offered every term.
Artificial Intelligence and Machine Learning (AIML)
The Artificial Intelligence and Machine Learning option focuses on the design and development of software to process, visualize, analyze and model data sets for the purposes of decision making and prediction. Students will develop an understanding of the fundamentals underpinning artificial intelligence and machine learning applications. Topics include search, games, constraint satisfaction problems, knowledge and reasoning, regression, classification, clustering, dimensionality reduction and kernel methods. Practical work will focus on analyzing real-world data sets, developing artificial intelligence and machine learning systems, as well as evaluating the performance of the systems for various domains.
The Client/Server option offers specialized courses in the areas of client/server computing, distributed computing, and mobile computing. Topics include architecture, modeling and structural issues, inter-process communications, and strategies to ensure performance, reliability, scalability, availability, interoperability, and security in such systems. Students develop client/server based systems and solutions using state-of-the-art tools and technology including TCP/IP sockets/datagrams/multicast-sockets, multithreading, multiprocessing, and thread/process synchronization involving desktop as well as mobile platforms.
Students in the Cloud Computing option will obtain hands-on experience using a wide variety of resources and services available on the world’s leading cloud computing platforms. Students will learn to create and maintain complex virtual computing environments. Students will also learn how to utilize automated software deployment, continuous integration, continuous delivery and continuous monitoring tools in cloud computing environments according to DevOps (development and operations) practices. The option culminates in students designing and developing software natively for cloud computing platforms. This type of development involves creating microservices and containers designed for serverless architectures. Please note: students in the Cloud Computing option will be posting their work on servers outside of Canada. Students will be required to sign a Student Consent Statement acknowledging this fact.
The Database option focuses on the design and development of applications, with an emphasis on the modelling, storage, access, and analysis of data. The option covers the use of advanced SQL, data analytics tools and frameworks to create data-driven applications. Students learn how to host data in a variety of formats in traditional relational databases, cloud databases, NoSQL databases, and Hadoop databases. Data analytics including descriptive, prescriptive, and predictive analysis, as well as business analytics using data cubes for online processing, are also covered.
Data Communications and Internetworking
The Data Communications and Internetworking option specializes in network architecture design, software development, and network security skills. Courses in the option place a heavy emphasis on practical software development skills such as design, coding and testing. Topics covered include protocol design and implementation; low-level systems programming on the Linux, Android, and Windows platforms; network application software development using the TCP/IP protocol suite; wireless protocol design; and the design and implementation of device-level communications applications. Devices used include Embedded Linux boards, Android devices, Radio Frequency Identification Devices (RFID), Wireless modems, and GPS devices. Practical work is focused around the analysis, application design, and implementation of the TCP/IP protocol suite. The environment is very team-oriented and "real world".
The Digital Processing option focuses on the development of digital image, video, and audio systems especially as it relates to gaming. Emphasis is placed on development of tools for new media applications. Topics include image processing, fundamentals of audio and video streams, 3D gaming environments using DirectX, and performance improvement with concurrent programming and MMX/SSE. Various techniques are studied for making filters (Finite Impulse Filters, Infinite Impulse Filters, Gausian smoothing, First-Order and 2nd-order edge-detection), morphing and warping techniques, compression (JPEG, MPEG, Wavelets), mirrors, and picking in 3D worlds. Advanced projects are usually drawn from IEEE papers such as template matching, face recognition, image stitching, and others. Team projects in game development on phones/tablets and the PC are encouraged.
The Information Systems option specializes in developing web-based and mobile applications required by medium and large businesses. Students develop large applications with state-of-the-art tools and application servers, and learn to administer Linux and Windows Servers. Topics include system architecture, performance, scalability, and security in distributed systems. Technologies covered include both Enterprise Java (including Java Server Faces, Java Persistence Architecture, Enterprise Java Beans) and Microsoft's .NET (including ASP.NET, C#, Web services).
More than two thirds of Canadian tech firms have only 1-4 employees. These small firms need to be nimble to grow and compete in this thriving sector. For students who hope to build their own start-up company, or expect to work in one, this option will introduce them to the range of skills needed to start and grow a company. Topics covered in the Tech Entrepreneur option include business plans, legal requirements, and communication and marketing skills such as pitching and positioning.
The Technical Programming option covers advanced techniques in design and software development. Topics include design principles of human-computer interaction, code techniques used for desktop, web and distributed applications (client-server and three-tier architectures), concurrent programming (multi-threading, synchronization and interprocess-communication), and project management. Students gain programming skills at the low-level of the Win32 API and Windows operating system kernel, and at the high-level in the area of human-computer interaction and web development.
Web and Mobile
The Web and Mobile option is aimed at students who want to specialize in developing software applications for Apple iOS devices, as well as websites. After learning how to script and write code in the first year of CST, students in this option develop hands-on skills in PHP, ASP.NET, Java, C# and Objective-C. Working in teams they apply industry standards, design patterns and use Agile development with Scrum. Graduates of the CST Web and Mobile option will able to develop and use client-side and server-side code with multiple programming languages to create mobile/responsive websites, plus web and mobile applications for the iPhone.
During the second year, students work directly with external industry sponsors on computing or IT-related projects via the Industry Sponsored Student Project (ISSP), applying their newly-learned skills, and acquiring real-world experience. Students work in teams with an industry sponsor, proceeding through the development life-cycle to develop an IT or software solution. All students participate in two projects.
Computer Systems Technology Diploma graduates have a wide variety of career options in the IT industry. Many start their careers as an entry-level software developer, application programmer, software tester, or network or database administrator. Later they can progress to positions such as systems analyst, IT project managers, team leads, software architects, information security analyst, and senior consultant.
Our graduates work in companies including:
Graduates of the Computer Systems Technology program can also pursue a Bachelor of Technology in Computer Systems at BCIT.
Please ensure you have reviewed the detailed information on this site, using the navigation to the right, before submitting the form below.
As well, if you meet any of the following criteria, please follow the links for more information, instead of sending the form:
Sign up to receive updates, invitations to events, and information about BCIT and your program.
We promise not to spam you, we won’t share your personal information, and you can unsubscribe at any time.
Programs and courses are subject to change without notice.