Utility Nav Top Nav Content Site Search Site Search
Program delivery update

To ensure we can safely offer the high-quality learning you expect, we've changed how many of our programs are delivered. Please view this program's delivery option(s) under "locations & availability". Learn more about how programs will be offered

IT Embedded Systems Programming

Learn how to get a variety of devices to communicate and exchange information through the internet.

Program Image
Start Date:
Typical Length:
1 Year
Advanced Diploma

Apply Now


The internet of things (IoT) is the network of devices that connect, interact and exchange data. Phones, wearable technologies, home security systems, vehicles and a growing number of other products can be monitored and controlled through the internet. Embedded systems programming is what enables this device-to-device communication to happen.

With more and more smart technologies hitting the market every day, the area of IT embedded systems programming is exploding.

Across all sectors, there's increasing demand for a labour force that has the skills to create, program and maintain IoT devices, systems and solutions. Jobs are available in a variety of industries, including information technology, health care, utilities, transportation and retail.

In this program, you learn to:

  • integrate a variety of technologies, such as programming languages/platforms, cloud services, operating systems and IoT protocols
  • install, maintain, troubleshoot and repair embedded and IoT devices
  • select and integrate appropriate sensors and devices for gathering, processing and transferring real-time data
  • securely transfer data in a networked environment using appropriate communication standards and protocols
  • develop applications for existing IoT devices using industry-standard languages and development environments
  • design interconnected embedded solutions that seamlessly integrate diverse, remote and distributed technologies

Work experience

  • Field experience (work placement) is a mandatory credit course completed at the end of your program. It provides you with the opportunity to apply your knowledge and skills outside of the classroom.
  • Opportunities are typically unpaid and last approximately 5 weeks.
  • Transportation, accommodations and other costs related to work placements are your responsibility.
  • For more information visit Work Experience Opportunities

Choose NSCC

  • The program was designed in response to industry input.
  • You'll engage with industry contacts through a variety of project-based activities and work-integrated learning opportunities.
  • You'll have the opportunity to develop programming skills along with a solid foundation in electronics.
  • You'll complete a Capstone Project, which will help instill an innovative and entrepreneurial component to your learning.
  • Professional practices and skills are incorporated into all projects and activities.
  • The program is aligned with the current suite of IT Diploma programs at NSCC, including IT Data Analytics and Cyber Security.

Other info

  • This program will interest those who are comfortable with logical processes, and who are interested in developing programming skills and competencies in physical computing.
  • The program has been designed to appeal to graduates of IT diploma or degree programs, as well as those in industry requiring upgrading in the field.

September 2020

Campus Location Full time/part time Delivery Availability
Institute of Technology Campus Halifax Full time Online (scheduled)Online (scheduled)
Complete your program fully online through a variety of learning experiences, including scheduled ​class sessions.
Seats available

Admission requirements

Program requirements

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


Tuition is valid for the 2020-21 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 the program can create IoT devices and/or use IoT to improve processes in a variety of fields and organizations. Job titles may include:

  • Device Programmer
  • Embedded Developer
  • Firmware Engineer
  • IoT Software Engineer
  • IoT Specialist
  • IoT Architect
  • Smart Device Product Manager
  • Full Stack Developer
  • Application Developer
  • Mobile Developer
  • Desktop Developer
  • Backend Developer
  • Edge Computing Architect
  • Enterprise Architect
  • IoT Cybersecurity Specialist
  • Data Communication and Networking Specialist
  • IoT UX/UI Engineer
  • Technical Analysist
  • Cloud Software Specialist (AWS, Azure)

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.

ELEC 3000 - Practical Electronics I
Students will learn the basics of electronics through application and construction of electronic devices and be introduced to basic circuit theory, interpreting schematics, and utilizing basic tools resulting in practical experience constructing an electronic project.

ELEC 3010 - Embedded Controllers I
This course introduces students to the design and programming of embedded systems using microcontrollers and microprocessors. Students will build a series of embedded systems using common architectures such as x86/x64, ARM, and Atmel processors to create smart devices and sensors that individually process the data they collect, otherwise known as edge computing.

ELEC 3011 - Practical Electronics II
This course builds upon knowledge gained in Practical Electronics I. Students will build more complex circuits using transistors, integrated circuits (ICs) and microcontrollers and examine how common IoT devices work and how to use them safely. The course will also discuss different types of sensors and how they can be integrated into a circuit.

ELEC 3020 - Embedded Controllers II
This course builds upon knowledge gained in Embedded Controllers I. Students will develop IoT devices using industry standard languages such as C/C++ and Python and more advanced I/O devices and sensors will be examined and a number of IoT protocols will be used for device-to-gateway and device-to-server communication.

INFT 3010 - Capstone Project I
Working within teams, students will integrate skills and knowledge to develop a real world IoT project using an agile framework to manage it effectively and regularly present their work to peers for feedback.

INFT 3020 - Capstone Project II
Building on a minimal viable product, students will integrate skills and knowledge from previous courses to continuously improve their project and add additional functionality. Students will also explore manufacturing, entrepreneurship, and service-learning applications of the project.

INFT 5500 - Work Experience
This course is either a campus-based or external applied learning experience which may consist of work experience, directed studies, industry projects or applied research.

ISEC 3010 - IoT Security
This course introduces students to issues related to securing IoT devices and the networks that host them. Students will examine networked IoT devices, operating systems, and protocols and discuss common vulnerabilities and exploits.

MOBI 3000 - Mobile Development
Students will develop applications for popular mobile devices that will be used to view the status of an IoT device, read the device’s inputs and control the device’s outputs. Applications will be written for modern Android and/or iOS devices.

NETW 3012 - Cloud Services
Students will learn how to connect electronic devices and sensors to cloud services to store data, visualize the data in different ways and monitor real-time information. They will also examine the current protocols used to communicate to the cloud, how to ensure the data is secure and how to host a personal "cloud" to build a complete end-to-end system.

OSYS 3012 - Embedded Operating Systems
This course examines the details of various embedded and real-time operating systems. Students get hands-on experience with several embedded operating systems and the specialized hardware used to run them and learn to assess the requirements of specific applications within the constraints of embedded hardware. Various case studies will be used to demonstrate course concepts.

PROG 3011 - Embedded C
This is a C programming course with a hardware focus. Students will learn the basics of the language using a PC, but will begin by using embedded devices (RPi, Arduino, PICs) to see the differences in development processes. Students are assumed to have programmed previously in both Java and Python. Advanced programming concepts, such as debugging and troubleshooting techniques are also covered.

PROG 3012 - IoT Programming with Java Script
This course introduces students to the JavaScript language and its application in monitoring and controlling IoT (Internet of Things) devices. Students will create responsive web-based user interfaces to control connected devices and be introduced to popular JavaScript libraries and environments, such as Node.js, Node-Red and IoT.js.

Apply Now

Have Questions? Contact Us.

Fill out this form and we'll be in touch.

Required fields are marked with a red symbol (*)

Yes No

Thank you for contacting us.
We will respond to you within three to five business days. While you wait, feel free to browse our list of Programs & Courses or visit our Admissions information section.