Overview
In this role you will maintain and architect software across embedded Linux and PC platforms within Bach-Simpson’s monitoring products. You will collaborate with the software team and report to the Software Manager, contributing to the design, implementation, and debug of software that supports critical rail systems. Your work will impact product reliability and performance in a safety‑critical domain. The position offers exposure to multiple technologies and a chance to influence engineering processes and workflows.
Pay / Benefits
- vacation
- health benefits
- dental benefits
- retirement plan
Responsibilities
- Participate in daily stand-up meetings
- Analyze technical requirements
- Design software to implement formal requirements
- Implement software designs
- Debug and root-cause defects
- Create and maintain software design documentation
- Assist other groups with understanding product behavior
- Collaborate with product management to respond to customer feedback
Key requirements
- Bachelor’s degree in software engineering, Computer Science, Information Technology or related field
- Minimum 5 years professional C programming experience
- Experience with embedded systems and bare metal programming
- Demonstrated passion for programming (personal projects or open-source contributions)
- Ability to see the bigger picture and suggest process improvements
- Willingness to embrace AI for workflows
- Clear English communication (verbal and written)
- Self-motivated with ability to manage multiple streams and meet deadlines
- Excellent attention to detail
- Legal authorization to work in Canada; willing to travel internationally
- Clear communication
- Attention to detail
- Prioritization and time management
- C programming
- Embedded systems
- Bare metal programming
…
