Senior Embedded Software/Firmware Engineer
- Ottawa, ON, Canada
Contract
Applications open in a new tab.
Job details
- Job type
- Contract
- Apply by
- Experience
- Minimum 3 years of relevant experience.
- Posting language
- English
- Posted
Original job description
Senior Embedded Software/Firmware Engineer
We are seeking a Senior Embedded Software/Firmware Engineer to develop and test next-generation firmware for advanced embedded optical systems. This is a one-year contract based in Ottawa, Ontario.
Key Responsibilities
- Implement and test firmware for next-generation embedded optical platforms.
- Understand and analyze software requirements and document designs that can be translated into code.
- Develop and test code that meets software requirements.
- Work with RTOS or embedded Linux updates and configuration, including interrupts, device drivers, memory, and multithreading.
- Review test plans proposed by test teams.
- Debug and resolve issues reported by test teams and customers.
Skills & Experience
- BS/MS in Computer Science or a related field with embedded software development experience.
- Minimum 3 years of relevant experience.
- Strong C++ programming skills in a genuine embedded/device context.
- Working knowledge of multithreaded RTOS or embedded Linux concepts, including interrupts, drivers, and memory management.
- Knowledge of at least one scripting language; Python preferred.
- Excellent analytical and troubleshooting skills.
- Experience with version control such as GIT and bug tracking tools such as JIRA.
- Object-oriented design and design-pattern experience is an asset.
More about this job
Responsibilities
The engineer will write, test and debug firmware for embedded optical systems. The work also includes documenting designs, reviewing test plans and resolving issues from test teams and customers.
Requirements
Candidates need a computer science or related degree, at least 3 years of embedded software experience, strong C++ skills and knowledge of RTOS or embedded Linux. Python, Git and JIRA experience are expected.
Skills
- C++
- Embedded C++
- RTOS
- Embedded Linux
- Multithreading
- Interrupt Handling
- Device Drivers
- Memory Management
- Python
- Git
- JIRA
- Debugging
- Firmware Development
- Software Testing
- Requirements Analysis
- Design Documentation
- Object-Oriented Design
- Design Patterns
- Test Plan Review
- Troubleshooting
Categories
- Software
- Technology
- Engineering
Keywords
- Embedded Software
- Firmware Engineer
- Embedded C++
- C++
- RTOS
- Embedded Linux
- Multithreading
- Device Drivers
- Interrupts
- Memory Management
- Python
- Git
- JIRA
- Version Control
- Optical Systems
- Photonics
- Object-Oriented Design
- Design Patterns
- Firmware Development
- Ottawa
Seniority
Senior
Tools
- C++
- Python
- Git
- JIRA
- RTOS
- Embedded Linux
Languages
- English
Fields of study
- Computer Science