Embedded Firmware Developer - Intern
NovAtel Inc
Calgary, AB, CA
3d ago


To support our focus on delivering high quality products, we are looking for an enthusiastic internship student to add to our Platform Development team.

The Platform Development team is responsible for implementing drivers for hardware and providing infrastructure code on the receiver that is used by other teams.

This role offers you the chance to work with leading edge technology in a real time embedded system. Working with our experienced team of firmware developers you will gain an understanding of how reliable, real time firmware is designed, written and tested.

You’ll be exposed to concepts used in complex, multitasking systems : critical sections, inter-process communication, task scheduling and priority.

Finally, you will gain valuable team collaboration experience using Agile development methods.


  • Based on requirements, develop C++ based firmware to implement new features in NovAtel GNSS receivers.
  • Work in a team environment, discussing problems, diagnostic steps and solutions.
  • Apply operating system concepts like task priority, scheduling, mutexes, semaphores.
  • Learn and apply concepts related to task concurrency, critical sections and I / O buffering.
  • Analyze and interpret schematic diagrams and component datasheets to understand how the firmware needs to manipulate the hardware to meet the desired functionality.
  • Create developer tests to exercise and prove low level functionality.
  • Follow approved development procedures for reviewing designs, tests and code.
  • Qualifications

    Must-Have : Registered in the Engineering Internship / Co-op program and have completed at least your 3rd year of studies by the start of your work term.

    Electrical Engineering (Software) or Computer Science student. Available for a minimum 12-month work term. Experience with C++ in a Windows development environment.

    Strong communication skills, both oral and written Key Success Factors : Ability to work in a collaborative team environment Confident Self-

    starter Detail oriented person able to follow complex instructions and a first-time right attitude Motivated by challenging work You are comfortable working individually but know when to ask for help Nice-

    to-Have : Familiarity with embedded systems and hardware. Experience with Python.

    Add to favourites
    Remove from favourites
    My Email
    By clicking on "Continue", I give neuvoo consent to process my data and to send me email alerts, as detailed in neuvoo's Privacy Policy . I may withdraw my consent or unsubscribe at any time.
    Application form