System programming

PROGRAM DESCRIPTION

This diploma program focuses on preparing you to work as a programmer requiring the application of current programming policies, practices, procedures and tools.

The two options are:

  • IT, System Programming - Embedded Programming Diploma
  • IT, System Programming - Embedded Programming Diploma with Co-op

LEARNING OBJECTIVES

This Co-op diploma program focuses on preparing you to work as a programmer requiring the application of current programming policies, practices, procedures and tools. This program will give you the theoretical knowledge and hands-on skills in industry-standard programming languages, C and C++. You will also become very proficient at assembly language, a low-level programming language used in architecture-specific solutions.

ADMISSION REQUIREMENTS

  • Grade 12 graduate or mature student status (British Columbia, 19 years or older)
  • Meet minimum English language proficiency requirements

CAREER OPTIONS

Upon successful completion, graduates will be able to secure employment in businesses of all sizes, such as help desk and technical support, data center operators, network administrators and network support analysts.

  • IC programmer
  • Hardware programmer
  • Firmware programmer
  • System programmer
  • Backend developer

Co-Op

The co-op will provide students with the opportunity to apply acquired theory and skills in a practical business setting. Students will gain real-world experience working on projects as a member of a team with project deliverables and deadlines.

Program Organization

Course No. Course Name Hours
ICR100 Information Technology Essentials 40
ICR110 Problem solving and analytical thinking 40
ICR120 Markup essentials 60
ICR130 Scripting for web development 60
ICR140 Database design and modeling 40
IGP300 System Programming 60
IGP310 Object Oriented Programming 160
IGP320 System Programming Workshop 20
IEP300 Algorithm and design patterns I 40
IEP310 Low level programming 80
IGP420 Portable programing 120
IEP400 Algorithm and design patterns II 40
IGP400 Computer Networks 60
IEP410 Embedded systems programming 40
CAP200 Co-op Prep. Workshop 80
Co-op 960

Course No. TERM 2 Hours
SBM200 Sustainable operations II 60
SBM210 Leadership in sustainability 40
SBM220 Advanced topics in green business administration 60
SBM230 Market strategy planning 40
SBM240 Natural resource management 40
SBM250 Market research 40

Delivery models and course sequencing may vary. Course descriptions are listed below.

Admission Requirements

  • Grade 12 Graduate or a mature student
  • Meet the Language proficiency requirements as listed below:

Prior to acceptance applicants must meet at least one of the following language proficiency requirements:

  • Provide verified results for one of the English language proficiency tests listed below.
  • Test results must be dated no more than two years before the start date of the program.

    1. International English Language Testing System (IELTS) Academic: overall score of 5.5 or higher.
    2. Test of English as a Foreign Language (TOEFL) IBT: overall score of 46 or higher
    3. Canadian Academic English Language (CAEL) Test: overall score of 40 or higher
    4. Canadian English Language Proficiency Index Program (CELPIP): Listening 6, Speaking 6, Reading 5, and Writing 5
    5. Duolingo English Test: overall score of 95 or higher
    6. Pearson Test of English (PTE) Academic: overall score of 43 or higher
    7. Cambridge English Qualifications: B2 First exam (FCE): overall score of 160 /"C" or higher
    8. Cambridge Linguaskill: overall: B2 level or higher
    9. LANGUAGECERT Academic: B2 level or higher
    10. The Michigan English Test (MET): B2 level or higher
    11. iTEP Academic: overall score of 3.5 or higher
    12. EIKEN: placement of Grade Pre-1 or higher

Mature student applicants:

  • Completion of 3 years of full-time secondary education (Grades 8-12) or 2 years of secondary education (including English 10 and 11 with a grade of 'C' or higher) from a country where English is one of the principal languages(This may be demonstrated by providing a high school transcript, completion of a BC Adult Graduation program or providing international education credentials recognized through WES, ICES, or IQAS.), or
  • Completion of 2 years of full-time post-secondary education at an accredited institution where English is the language of instruction (Language development courses (i.e., ELL courses) cannot be included in this calculation), or
  • Evidence that a language standard defined and accepted by a third-party regulator has been met. This may include minimum language standards or testing options set by a third-party regulator (e.g., Health Colleges, Public Registries, Transport Canada, etc.).
  • Applicant is 19 years or older at the start of the program and is a Canadian citizen or permanent resident who cannot access is their educational records or provide sufficient evidence of secondary or post-secondary education as outlined above:
    1. Reading: 235
    2. Writing: 235
    3. WritePlacer: 4

Language development courses (i.e., ELL courses) cannot be included in this calculation. Accuplacer may not be used to demonstrate that a student meets an admission requirement other than language proficiency. For example, Accuplacer may not be used to demonstrate that a student meets a Math 11 admission requirement.

ICR100 Information Technology Essentials

This is an introductory to the basics of computer hardware, especially those components that are used frequently by programmers including RAM and CPU. Students will also be introduced to operating systems.

ICR110 Problem Solving and Analytical Thinking

Understanding the language, grammar and syntax of a programming language is key to solving programming problems. This course introduces the student to programming logic and theory without focusing on a specific programming language. Students will solve programming problems using pseudo-code.

ICR120 Markup Essentials

This course introduces students to web pages and simple website infrastructure. Students will construct simple webpages using HTML and JavaScript while learning programming principles and best practices.

ICR130 Scripting for Web Development

Students will learn how to create key components required in modern commercial websites, applying HTML, CSS and JavaScript skills in a real-world context.

ICR140 Databases Design and Modeling

This introductory database course covers database roles, design methodologies and development tools including Classic ASP and Microsoft Access.

IGP300 System Programming

This course introduces basic C programming principles. Students will develop console applications using Visual Studio and learn about pointers and data structures.

IGP310 Object Oriented Programming

Students will learn object-oriented concepts using C++, including classes, inheritance and polymorphism. Advanced concepts such as templates and operator overloading are also covered.

IGP320 System Programming Workshop

Students will apply their programming knowledge to solve real programming problems.

IEP300 Algorithm & Design Patterns I

This course introduces algorithms and software engineering principles that improve code efficiency and reusability. Students will learn design patterns, data structures, and problem-solving techniques.

IEP310 Low Level Programming

This course focuses on assembly language and its role in computer architecture. Students will work with Intel and AMD processors and understand low-level system operations.

IGP420 Portable Programming

Students will explore Java programming from basic to advanced levels, including object-oriented concepts and application development.

IGP400 Computer Networks

This course introduces networking concepts, including design and implementation of simple networks using practical tools and hardware.

IEP400 Algorithm and Design Patterns II

This advanced course expands on software engineering principles and introduces multiple design patterns to improve software design and performance.

IEP410 Embedded Systems Programming

Students will learn to program embedded systems using C and C++, including microcontrollers and Arduino platforms.

CAP200 Co-op Preparation Workshop

This course is to get students familiar with the work culture, communication, employer - mployee relationship and all necessary soft skills that are needed to secure a job. This course is spread over all terms and teaches students different levels of skills needed to obtain and keep a job.

Graduation Requirements

  • Successful completion of all program courses
  • Successful completion of program Co-op (If applicable)

Program Duration

Program Hours
Total instructional hours 960 (No Co-op) - 040 (With Co-op)
Total Co-op hours 960 (if applicable)
Total program hours 960 (No Co-op) - 2000 (With Co-op)
Total program length (weeks) 48 (No Co-op) - 96 (With Co-op)

Delivery Method

This program can be delivered in different methods,

  1. On Site

    The program will be delivered 100% in person*

    Courses may be offered in a different order as long as prerequisites are met. Prerequisites are indicated in each course outline.

  2. Distance

    The program will be delivered 100% in an asynchronous** style except for the integrated work experience i.e practicum or co-op

    Content of courses may be available at the same time OR in a different order as long as prerequisites are met. Prerequisites are indicated in each course outline.

  3. Combined (Hybrid)

    In this method, 50% of EACH COURSE of the program is delivered in person and the other 35% to 50% percent is delivered in synchronous** style and 0 to 15% in asynchronous*** style.

NOTE:

In this method, EVERY course of the program is delivered both in class and online. Courses may be offered in a different order as long as prerequisites are met.

Prerequisites are indicated in each course outline.

Students may ask SEA in writing if they want to take different percentages in class or online. Upon SEA's approval, an amendment to the enrollment agreement must be signed.

*In person - means all classes of all courses are conducted on campus and students and instructors are on the same schedule and in the same physical location.

**Synchronous is when students and instructors are on the same schedule but can log in to a virtual class at the same time, only from different physical locations.

***Asynchronous is when students are on their own schedule and log in to the school management system at their own time, submit assignments on their own schedule and within a specific timeframe and are in touch with instructors via email and not necessarily at the same time and/or time zone.