Information Technology: Programmer-Analyst

CampusStart DateTuition/Fees
Fredericton September 2021 (Blended Delivery) Domestic | International
Saint JohnSeptember 2021 (Blended Delivery) Domestic | International
MonctonApril 2021 (Blended Delivery) Domestic | International

Program Overview

Programmer Analysts are specialists in computer programming. They design and develop software systems and then learn how to apply them in a business-oriented environment. You’ll learn essential information technology skills and how to program for businesses. Upon graduation, we offer a work practicum at an employer's site. There's no speaking in code here - computer technology dominates industries. Programmer Analysts find meaningful work quickly in diverse fields, including: information technology, manufacturing, and education.


The requirements for this diploma program may be achieved within two academic years of full-time study.

Admission Requirements

    Profile A

  • High School Diploma or Adult High School Diploma or GED Diploma of High School Equivalency or Essential Skills Achievement Pathway: Post-Secondary Entry High School Diploma

    NB Francophone High School Math Equivalencies
    International Student Admission Equivalencies

    Career Possibilities

    Graduates of Information Technology (IT) are attractive to organizations at all levels in the IT field, and they are finding and retaining related employment across the entire spectrum of the New Brunswick market ranging from small independent shops, through large private organizations, to the government itself. Graduate follow-up surveys have consistently revealed a relevant employment rate in excess of 90 percent. With all estimates pointing toward healthy growth in the IT industry, the outlook for Information Technology graduates is positive.

    Find career possibilities related to this program in Career Coach.

    Specific Considerations

    This program is a "Learning Integrated Virtually Everywhere" (L.I.V.E) program that requires the use of a notebook computer as part of the learning experience. Your notebook computer should meet minimum technical specifications to ensure the software required for your program operates effectively. To find these technical specifications, see L.I.V.E. (Learning Integrated Virtually Everywhere).

    Program Courses

    Courses are subject to change.

    As global markets become increasingly competitive, employers are seeking information technology (IT) professionals who are not only talented developers or systems administrators, but also understand business.  In this course, students learn to consider the impact of information technology systems from a broader perspective, while developing their own communication, collaboration, and leadership skills.  Students are introduced to business structures and environments.  Through class discussions, assigned readings, in-class studies, and business case analysis, students develop a viable business vocabulary, an understanding of internal business functions, and the potential to improve business operations and increase profit margins by leveraging technology. 

    This course is designed to explore the variables involved in the start-up and sustainability of entrepreneurial ventures as it relates to your chosen field of study. The scope of the course ranges from idea generation to explore new market opportunities to developing strategies to gain and retain clientele. Knowledge is applied through the use of case studies and inter-active exercises.

    In this course, students acquire fundamental knowledge of computer systems. They learn key hardware and peripheral components, their properties, functions, compatibility, inter-connectivity, and inter-operability. They learn the safety and customer service standards associated with computer assembly and service. They set up basic computer systems that meet user requirements by selecting the appropriate types of hardware, cables/connectors, and peripheral devices. In the successive course, students install, configure, and troubleshoot these systems.

    Students will learn to write a variety of technical documents and business correspondence suitable to a specific audience and purpose as well as learn how to conduct research and document sources.

    This course teaches students how to create documents that are organized, unified, and coherent.

    The students learn how to write SQL statements to create and query a database with SQL Data Definition Language (DDL) and SQL Data Manipulation Language (DML). Coverage includes commands to insert, update, and delete database data and construct complex queries using joins, conditional SQL statements, and aggregate functions.

    The students learn how to write SQL stored procedures and triggers to create and maintain data in a database. Coverage includes various parameter types, concurrency, locking issues and transactions.


    • DATA1024

    This course introduces the concept of relational database design and the fundamental skills needed to develop a database and its related application. The course deals with the physical, logical, and managerial aspects of database design. Additionally, current theoretical concepts are put into practice using current database architectures and technology.

    This course introduces the students to data retrieval and visualization techniques. Progression is made from simple lists to summary reports and drill downs. Emphasis is placed on creating visualizations for basic to advanced applications.


    • DATA1025

    This course presents math concepts that are relevant to the information systems field. Topics include review of number systems, computer arithmetic, sets and relations, matrices, and linear equations. In addition, the course introduces elementary statistics, including descriptive statistics, probability distributions and sampling.

    This course introduces students to the use of microcontroller platforms to control electromechanical devices.    Students will integrate electronic and mechanical components to produce a device with an intended purpose, and then develop algorithms and programs that control the device to expected specifications.


    • PROG1017G

    This course introduces the concept of web development and provides the student with the knowledge to develop a well-designed Web site through the use of HTML and CSS.

    Responsive Web Design is a web design approach aimed at providing optimal viewing across a wide variety of devices from desktop computers to mobile devices. In this course, students gain experience in creating responsive web designs that meet specifications and are capable of adapting to any device on which they are displayed. Students learn how to use flexible grids, layouts, images and CSS media queries to make their designs responsive. Testing methodologies and best practices in the design of mobile web applications are also discussed.


    • MULT1083

    In this course, through a blend of theory and practical application, students learn to manipulate digital images and create graphic elements appropriate for web design. Using current web tools and best practices, students learn to build interface elements and to optimize their digital creations to ensure web designs load quickly and efficiently. The course also introduces students to User Experience (UX) Design.  They learn about how to implement UX design concepts into their work, and the how Web and Mobile Developers work with UX Designers.


    • MULT1083

    This course introduces students to fundamental networking concepts and technologies including architecture, structure, functions and components. These constructs, in addition to the structure of IP addressing and the fundamentals of Ethernet concepts, media, and operations, provide a foundation for further study in networks.


    Linux adoption continues to rise world-wide as individual users, government entities and industries ranging from automotive to space exploration embrace open source technologies. This course covers the fundamentals of operating in a LINUX based operating system while in the command line environment.


    This course enables students to develop the level of technological competence to implement and maintain a desktop operating system in a Microsoft Windows enterprise environment. Through a combination of classroom lectures, demonstrations and lab work, students learn to install, deploy, and upgrade a Windows Operating System (OS). Students learn to maintain systems with an emphasis on reliability issues and performance. Topics include: pre-installation and post-installation system settings, security features, system maintenance, network connectivity applications, and mobile computing.

    This course is one in a series of three that helps students prepare for the CompTIA A+ certification.

    Participants are challenged to apply human relations and interpersonal communications theory to workplace-based and real life situations. They use a problem solving perspective in suggesting and carrying out appropriate communication strategies and techniques.

    This course will introduce students to job search techniques.

    This course provides an introduction to the meaning of community service.  Students learn how community service can enhance a student’s educational experience, personal growth, employability, and civic responsibility. Students participate in one day of volunteering to enhance their understanding of civic responsibility and to help the New Brunswick Community College realize its vision of transforming lives and communities. 

    This course introduces the student to the fundamentals of application design and programming. Students learn to use a development framework, interface and associated toolset for rapid application development. The course covers introductory elements of event driven programming including forms design, extensive use of controls, properties, methods, events, selection structures, loops, sub procedures, and functions.

    This course introduces students to alternative technologies, applications, or methodologies that are not part of the regular curriculum. The course could serve to enhance or supplement existing training in response to cutting edge technologies or industry demands. At the instructor’s discretion, the course could be presented as either an instructor-directed or student-directed learning experience. Due to the variable nature of this course, exams are discretionary.

    This course introduces the students to database programming.   As an essential part of understanding and building user applications, students learn to connect and update the data in a database.


    • PROG1017G

    In this course, students study the JavaScript programming language and become familiar with some fundamental programming concepts.


    • MULT1083

    Students learn the comprehensive steps required for building dynamic, data-driven, interactive server-side websites with PHP. A variety of practical real world projects drive the learning.


    • DATA1025

    This course is an opportunity for students to gain practical experience in system development.  Students apply systems design theory and computer programming skills to complete a small systems development project under the supervision of an instructor.  The student’s progress is closely monitored by the instructor using intermittent technical reviews and manual submissions. Students program, test, document and deliver a realistic, small-scale system with components written in a variety of languages (Visual Studio .Net, Java, and/or another approved programming language) against an approved Relational Database Management System (RDMS). Emphasis is placed upon individual initiative, resourcefulness and self-discipline to build and implement this project from start to finish.


    • SYST1018C
    • PROG1121J
    • PROG1313B
    • DATA1025

    The purpose of the practicum is to support and enhance each student’s educational experience by making learning experiential. Through an off campus placement, students gain valuable related work experience under the supervision of an experienced professional. Students apply the knowledge gained and skills developed through course work in a real life work setting, solving real world problems while working in project-based team environments.  As part of their practicum placement, students are required to document and present their experiences, outcomes, and learnings. The practicum experience can help guide students on their career paths while experiencing first-hand the conditions and expectations of the workplace. 


    In this course, students study mobile application development techniques and become familiar with the basic concepts in developing for a variety of devices.


    • MULT1170
    • PROG1128

    The purpose of this course is to introduce students to the fundamentals of Java programming, program design and problem solving. Students gain practical experience editing, compiling, and executing Java applications using object oriented concepts. Students learn language constructs and syntax, collections, generics, iterators and enums.


    • PROG1311B

    Mobile devices have become an important part of our daily lives. In this course, students are introduced to Android application programming as a solid foundation for designing, creating and deploying applications into the Google Play Store. Topics include views, activities, intents, broadcast receivers, and content providers. Location-based services, sensors and app deployment are also covered.


      This course introduces the student to the higher-level concepts of object-oriented programming. The course covers introductory and advanced elements of object-oriented programming including inheritance, interfaces, polymorphism, encapsulation, abstraction and aggregation. The methodology of architecting an object-oriented programming solution aimed at solving a business problem is discussed.


      • PROG1017G

      This course is designed to enable students to apply advanced Java programming concepts to develop and deploy enterprise applications. 


      • PROG1303E

      This course provides students with the knowledge and skills necessary to plan, coordinate, implement and evaluate a project within a team environment. Students learn effective project management techniques that allow them to monitor all work activities and ensure a quality product while remaining within budget and meeting all contract requirements.

      A safe and healthy workplace is the responsibility of the employer and the employee. This course introduces students to the importance of working safely and addresses how employers and employees can control the hazards and risks associated with the workplace. Students will also learn about the roles and responsibilities of key stakeholders including WorkSafeNB, the employer and the employee in ensuring workplaces are safe.

      This course provides students with the knowledge and skills necessary to apply the fundamentals of analysis, design and the development process using an object-oriented approach, including Rational Unified Process (RUP) and Unified Modeling Language (UML).

      This advanced level course features the study and practical application of advanced, structured Information Systems development skills. The Student is given a project in case study form to apply analysis and design theory, concepts and skills. This course stops just short of the actual coding, testing and implementation activities.

      A role-playing approach is used in dealing with realistic complexity in the development of Business Information Systems. Throughout the case study, there is heavy emphasis upon teamwork, problem-solving and communications skills.


      • PROJ1029
      • SYST1017
      • DATA1028

      In this course, students gain exposure to the software testing process with a focus on product quality subsequent to unit testing. Software testing is examined from the perspective of the stakeholders involved.

      NOC Codes

      2174 - Computer programmers and interactive media developers

      Articulation Agreements

      Institution: St. Stephen's University
      Articulation Period:
      Information: All one and two year NBCC programs will be recognized as approved programs of study within SSU's Bachelor of International Studies (BIS) program.

      Disclaimer: This web copy provides guidance to prospective students, applicants, current students, faculty and staff. Although advice is readily available on request, the responsibility for program selection ultimately rests with the student. Programs, admission requirements and other related information is subject to change.

      Fall 2020 - What Can I Expect

      Do you have questions? We're here to help. Search our ‘knowledge articles’ for answers to our most frequently asked questions. Can't find the information you're looking for? Fill the form below and a dedicated staff member will get back to you.

      Career Coach