Skip to main content Skip to site utility navigation Skip to main site navigation Skip to site search Skip to footer

IT Programming

Gain the skills to write code for a variety of software solutions.

A woman sits at her desk smiling and looking at her computer screen.
Start Date:
September & January
Typical Length:
2 Years

Apply Now


If you are interested in understanding how computers work, have an interest in application development and programming, and a drive to create things that others will use, IT Programming is for you.

In this program, you learn to create software solutions, write effective code and follow best practice coding and design standards.

Throughout your studies, you work as part of a multi-disciplinary team as well as independently. You'll also learn to liaise with clients who have non-technical backgrounds.

Work experience

  • Field experience is a mandatory credit course, providing you with the opportunity to apply your knowledge and skills outside of the classroom.
    • Opportunities are typically unpaid and last approximately 5 weeks.
  • This program is eligible for an optional cooperative education (co-op) credit course between year one and two.
    • Co-op provides an opportunity for paid, full-time employment in a field related to your program.
    • Co-op takes place in third term and must be a minimum of 12 weeks and 420 hours.
    • Our co-op program follows Co-operative Education and Work-Integrated Learning Canada (CEWIL) guidelines.
  • Transportation, accommodations and other costs related to work experience are your responsibility.
  • For more information, visit work experience opportunities.

Choose NSCC

  • You benefit from faculty who bring years of industry experience to the classroom.
  • Courses are designed to give you a well-rounded experience that parallels industry workplaces.
  • You gain practical experience and apply your skills during work terms.


Seats are available for domestic applicants only. International applicants will be waitlisted.

September 2024

Campus Full time/part time Delivery Availability
Annapolis Valley Campus
Classes at COGS
Full time In person
Delivered in-person. Some courses may have online elements.
Seats available
Burridge Campus
Full time Blended distributed
Delivered through a combination of online and in-person classes. In-person classes are delivered at one location and virtually to students at another location. At least 50% of learning is in-person.
Full time Synchronous online
Delivered fully online with both non-scheduled and scheduled classes.
Institute of Technology Campus
Full time In person
Delivered in-person. Some courses may have online elements.
Lunenburg Campus
Full time Blended distributed
Delivered through a combination of online and in-person classes. In-person classes are delivered at one location and virtually to students at another location. At least 50% of learning is in-person.
Sydney Waterfront Campus
Full time In person
Delivered in-person. Some courses may have online elements.

January 2025

Campus Full time/part time Delivery Availability
Institute of Technology Campus/Online
Full time Blended
Delivered through a combination of online and in-person classes. At least 50% of learning is in-person.

Admission requirements

Program requirements

  • Portfolio development – As part of your studies at NSCC, you develop a portfolio of your work; the portfolio captures your achievements and profiles your skills to employers.


Tuition amounts are for the 2024-25 academic year. Program costs and fees (textbooks, supplies, etc.) are additional.

Tuition (Domestic):
Tuition (International):

Tuition, fees and program costs

In addition to annual tuition, there are program costs (books, tools, etc.) and student fees for College services, health and dental plans, your student association and parking.

View detailed program fees page(s). Please note that amounts on these pages are meant for planning purposes only. They don't represent final amounts owing.

Career options

Graduates of this program work in the following positions:

  • Mobile Application Developer
  • Web Developer
  • Back-end Developer
  • Game Developer
  • Desktop Application Developer (Windows)
  • Systems Developer
  • Software tester
  • Quality control specialist

Future study options

Courses may include

These are some of the courses offered in this program. It is not a complete list and courses are subject to change in advance of the academic year.

Recognizing prior learning / transfer credits
If you have previous learning (course, employment, etc...) that's relevant to your program, you may be able to apply to earn credit. Not all programs are eligible. Learn about our recognizing prior learning (RPL) process.

DBAS 1007 - Data Fundamentals
This course introduces students to the concept of a database management system and its role in the IT infrastructure of any business. Students will use a database management system to develop a database and use this database to store and manipulate data. Students will also be asked to interpret database diagrams and create database objects based on their meaning.

ICOM 2701 - Professional Practice for IT I
This course exposes students to tools and process that support professional continuous improvement. This course builds the foundations for professional habits and methodologies that help graduates remain current and relevant in an ever-evolving profession.

ICOM 2702 - Professional Practice for IT II
This course develops the skills, attitudes, processes and habits required to successfully prepare for a variety of interview scenarios and the associated presentation techniques. Emphasis is on the development of a professional portfolio and the part that personal marketing plays in gaining successful, relevant employment.

ICOM 2703 - Professional Practice for IT III
This course provides students with the skills and knowledge to curate a personal, professional portfolio in readiness for employment in the IT industry. In addition, students will practice and prepare for numerous interview situations and scenarios by honing the skills and techniques previously acquired.

INET 2005 - Web Application Programming I
This course focuses on the planning, design and development of dynamic (data-aware) web pages using server-side programming and database connectivity.

INFT 2100 - Project Management
This course covers the basic theory and skills that introduce the learners to the process of effective project management and the unique challenges of Information Technology (IT) projects and methodologies.

INFT 4100 - Work Experience
This course is a summative experience in the context of a real-world organization. Students will apply learning in an authentic professional IT working environment and gain hands-on industry related skills and knowledge.

MOBI 3002 - Mobile Application Development - Android
In this course students will develop mobile software applications that run on the Android platform. Students will use the Android Studio development platform to write, debug, and test software applications. Students will develop these apps by stepping through various phases, such as graphical interface design considerations, the SDK/API interface, device capability, debugging, simulation and testing.

NETW 1027 - Introduction to Networking and Security
This course is focused on supporting network connected devices covering troubleshooting and maintaining connectivity from a client perspective.

OSYS 1000 - Operating Systems - Linux
This course introduces the skills and knowledge that will enable the student to install, configure, maintain and troubleshoot a current UNIX based operating system (OS) in standalone workstation mode.

OSYS 1200 - Introduction to Windows Administration
This course is an introductory course to familiarize the student with key topics in managing a Windows client operating system.

PROG 1400 - Introduction to Object Oriented Programming
This course is an introduction to the essentials of object oriented programming (OOP). This course provides an explanation of the paradigm on which OOP is based, and how it affects programming strategies and solutions.

PROG 1700 - Logic and Programming
This course introduces the fundamentals of logic and computer programming and their role in the creation of software solutions for any problem. Logic is used to break down complex problems into manageable tasks to allow for comprehensive problem-solving using computer code. This course covers the process of creating logical designs and implementing them as programmatic code to build computer software programs.

PROG 2007 - Programming in C
This course introduces students to the C programming language, focusing on the various uses of pointers, efficient memory management and interfacing with the standard C libraries. The course will also highlight the differences between the C language and other common programming languages that learners may be familiar with, in terms of syntax and coding practices.

PROG 2100 - Programming C++
This course introduces learners to the C++ programming language, focusing on the use of pointers, memory management, generic programming and the Standard Template Library. Exploration of the language in a project context aims at reinforcing object-orient design principles; use of idioms & design patterns; use of UML in design and documentation; and utilization of third-party libraries.

PROG 2400 - Data Structures
This course presents fundamental data structures and algorithms with a pragmatic, application driven approach. Selected data structures are examined in detail together with implementation issues, and an in-depth discussion of their corresponding algorithms.

PROG 2500 - Windows Programming C#
This course explores Graphical User Interface (GUI) programming in a Windows environment. The emphasis is on learning practical approaches for designing and implementing GUI-based programs using the .NET framework.

PROG 2700 - Client Side Programming
This course builds on the concepts covered in Introduction to HTML by adding functionality to static web pages through client side programming and CSS pre-processors / libraries. A heavy focus is placed on developing without the use of large JS frameworks/libraries. Foundational data sending and retrieval will also be explored using JSON data formats.

SAAD 1001 - Introduction to Systems Analysis and Design (AD)
This course explores the analysis and design phases of the software development life cycle using object-oriented methodologies and tools. Exploration can include an introduction to the Unified Modelling Language (UML), the philosophy of agile development/design and the basics of good proposal writing.

SAFE 1000 - Introduction to WHMIS (Workplace Hazardous Materials Information Systems)
This course offers learners basic overview of WHMIS principles and establishes a solid foundation to support workplace-specific training on the safe storage and handling of controlled/hazardous products. Upon successful completion of the course, students receive basic WHMIS certification.

SAFE 1001 - Introduction to NS OH&S Act
This course offers students an introduction to the Occupational Health & Safety (OH&S) Act of Nova Scotia, which is required by any person employed in a Nova Scotia workplace. This is a generic, introductory course that provides basic knowledge of the Act for students and is considered to be the basis from which more specific training can be given.

WEBD 1000 - Website Development
This course provides an introduction to website development. Emphasis will be placed on development processes, usability, and adhering to current industry standards.

Apply Now

Learn more about this program

Contact us

Share your details with us and we'll send you a program overview.

Required fields are marked with a red symbol (*)

Thank you for contacting us.

Your program overview is on the way. While you wait, feel free to browse our list of Programs & Courses or visit our Admissions information section.

Explore similar programs

To find other programs and career options that might be a good fit for you check out these areas of interest: