×
Register Here to Apply for Jobs or Post Jobs. X

Engineer, Software

Job in Newmarket, Ontario, Canada
Listing for: Celestica Inc.
Full Time position
Listed on 2025-11-12
Job specializations:
  • Software Development
    Embedded Software Engineer, Software Engineer, DevOps, Python
Salary/Wage Range or Industry Benchmark: 70000 - 90000 CAD Yearly CAD 70000.00 90000.00 YEAR
Job Description & How to Apply Below

Engineer, Software

Date: Oct 10, 2025

Location: Newmarket, ON, CA

The Engineer, Software develops, debugs, tests, deploys and supports code to be deployed in systems/products/equipment for various applications. They write, debug, maintain, and test software in various common languages and for software at various levels in the hierarchy (from Firmware to Application). Software creation follows an agreed to development process (such as Agile, Scrum, etc.) and complies with the product life cycle development (phase/gate deliverables).

The Engineer, Software works in cross functional teams with other designers, customers, manufacturing engineering and project leadership to ensure robust and high quality product development. Enhance designs with feedback from reviews in areas such as manufacturing, test, supply chain, reliability, industrial design and simulations.

Detailed Description
  • Work independently to design and develop technical solutions without assistance in a limited number of technical fields supporting common segments/technologies. May also solve complex problems in cooperation with a team of other engineers.
  • Hardware Interaction:
    Write code directly interacting with microcontrollers/Microprocessors, SOCs, sensors, actuators, and other hardware components.
  • Low-Level Programming:
    Work extensively with C/C++ and assembly language for optimal performance and resource management.
  • Real-Time Operating Systems (RTOS):
    Develop and debug applications on constrained systems, often using RTOS for task scheduling and concurrency.
  • Resource Optimization:
    Efficiently manage memory, power, and processing cycles, critical for embedded devices.
  • Driver Development:
    Create and maintain device drivers for specific hardware peripherals (e.g., SPI, I2C, UART).
  • Firmware Development:
    Design, implement, and test firmware, often from boot-up to application logic.
  • Debugging & Testing:
    Utilize specialized tools like JTAG/SWD debuggers, oscilloscopes, and logic analyzers for hardware-level debugging.
  • Board Bring-Up:
    Participate in the initial software development phase when a new hardware board becomes available.
  • Protocol Implementation:
    Implement and work with various communication protocols (e.g., CAN, Ethernet, USB, custom wireless protocols).
  • Reliability & Safety:
    Design and test software for high reliability and, in A&D or equivalent, safety-critical operation (e.g., fail-safes, watchdog timers).
  • Standards & Compliances:
    Design and develop the software aligned with listed standards including but not limited to: RTA DO-178C & related standards.
  • Integrate tools and code developed by other internal groups or external customers
  • Debug of solutions using design of experiments, tools, and failure analysis methodologies
  • Liaison between the Customer, Program Manager, and the technical team
  • Apply a continuous improvement mindset to all aspects of the development process
  • Occasional travel and flexible work schedules for global site support may be required
  • Firmware & Low-Level Programming:
    Experience in designing and developing firmware for embedded systems using languages like C/C++. Proficient in bare-metal programming, interrupt-driven design, and memory management for highly optimized code.
  • Microcontroller/Microprocessor:
    Working knowledge of microcontroller and microprocessor architectures (e.g., ARM Cortex, PIC, AVR) and their peripherals, including timers, ADC/DAC, PWM, and GPIO.
  • Real-Time Operating Systems (RTOS):
    Experience with RTOS concepts and implementations (e.g., FreeRTOS, RT-Thread), including task scheduling, inter-task communication, and synchronization.
  • Hardware-Software Integration:
    Proven ability to integrate software with hardware, perform board bring-up, and use electronic lab equipment (e.g., oscilloscopes, logic analyzers, and JTAG/SWD debuggers) to diagnose and resolve complex hardware-software issues.
  • Communication Protocols:
    Hands-on experience with both on-board and external communication protocols such as I2C, SPI, UART, CAN, USB, and Ethernet.
  • Embedded Linux/Operating Systems:
    Experience in developing applications for embedded Linux environments, including device driver development, kernel configuration, and file system management.
  • Scripting & Automation:
    Proficient in Python for developing build scripts, test automation frameworks, and data analysis tools to support the embedded development workflow.
  • Software Development Lifecycle (SDLC):
    Experience with the complete SDLC for embedded products, from concept and design to testing, deployment, and long-term maintenance.
  • Version Control:
    Experience with version control systems, particularly Git, for collaborative development and managing codebases.
  • Documentation:
    Strong technical writing skills to create and maintain clear, comprehensive documentation for firmware design, APIs, and test procedures.
  • Continuous Integration/Continuous Deployment (CI/CD):
    Experience working in robust CI/CD pipelines using tools like Jenkins, Git Lab CI/CD, or Git Hub Actions. This includes automated testing,…
Note that applications are not being accepted from your jurisdiction for this job currently via this jobsite. Candidate preferences are the decision of the Employer or Recruiting Agent, and are controlled by them alone.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search:
 
 
 
Search for further Jobs Here:
(Try combinations for better Results! Or enter less keywords for broader Results)
Location
Increase/decrease your Search Radius (miles)

Job Posting Language
Employment Category
Education (minimum level)
Filters
Education Level
Experience Level (years)
Posted in last:
Salary