Advanced Embedded Software Developer - Core Platform

Christie Digital Systems Canada Inc.
Christie Digital Systems Canada Inc.

Software Engineering

Ontario, Canada · Kitchener, ON, Canada

Posted on Jun 16, 2026
About the opportunity:We are looking for an Advanced Embedded Software Developer to be part of an innovative team that is pushing the boundaries of technology. As part of our team, you'll have these opportunities to work at the core of an advanced projection system, developing embedded software that directly controls a high‑performance laser illumination subsystem. We pride ourselves on major breakthroughs in digital cinema, laser illumination, and our relentless pursuit of creating spectacular audio-visual experiences. Responsibilities: Design, develop, and maintain embedded software for advanced microcontrollers supporting laser illumination control in projection systemsMaintain and support a number of display devices from a common code baseHardware device driver development for peripherals such as GPIO, UART, DMA, SPI, I2C, CAN and DACsIntegrating software components and ensuring they work seamlessly with the hardware by identifying and resolving software defectsThermal and laser control algorithm developmentCollaborate with a multi-disciplinary team of software, hardware, systems, optical and FPGA developersOptimize software for real-time performance and reliabilityDevelop and maintain technical documentation including software architectures, interface definitions and control algorithms Location: hybrid position based in Kitchener, ONWhat we’re offeringA competitive salary, vacation, health & dental benefits and employer-matched pension plan. You’ll have opportunities to learn, grow, and collaborate with professionals on a global reach. Whether you’re working with the leading minds in the industry on high-profile projects, with internal teams to support continuous improvement, or with our customers to inspire and delight—your contributions will make a difference. The experience and skills we value: A degree or diploma in Computer Science, Engineering, or a related field5-7 years of software development experienceProficient in C++ with solid object-oriented design skillsGood understanding of bare‑metal and/or RTOS-based embedded systems, including task scheduling and interrupt handlingMulti-threaded development knowledgeFamiliarity with debugging tools and techniques for embedded systemsExperience with hardware testing equipment such as oscilloscopes, logic analyzers, protocol analyzers What will put you ahead: Experience with CPU/FPGA interfacing and familiarity with protocols such as I2C, SPI, CAN, TCP/IP, UDPKnowledge and experience with video standards and interfaces such as HDMI, DisplayPort, and SDIBackground in control theory, signal processing, or model-based designExperience reading schematics and data sheetsHands-on experience developing software for STM32 microcontrollersExperience with FreeRTOS or other real-time operating systemsInvolvement in developing embedded software architectures to meet hard real-time deadlinesExperience using Git for source version control