Senior Embedded Software Engineer, Platform Software
3 days ago
Canada
Horizon Aircraft, Inc.
Full-time
Free with email or Google
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
Free with email or Google
By continuing, you agree to our Terms & Privacy Policy.
We take pride in pushing the boundaries of technology and customer experience to deliver something that has never been done before. We are a fast-moving organisation that promotes a hands-on approach, supporting each other through the tough spots, generating a close-knit team with a family feel.
Horizon is seeking an open, enthusiastic Senior Embedded Software Engineer . Your role involves designing, developing and maintaining the embedded software that runs on our platform, ensuring it meets our performance, safety and design targets. Your role will be pivotal in determining what our platform is capable of, and you will support the design team with creative ideas to make our software more robust, efficient and capable.
Support systems engineers in specifying the functionality and characteristics of airborne software based on system level requirements.
Develop embedded software in C for bare metal hardware ARM microcontroller targets (I/O drivers built upon board support packages, custom databus packet definition, packet parsing and checksum, co-operative interrupt driven schedulers etc.)
Architect and design the embedded software, considering hardware constraints, design constraints, and available resources to satisfy the system level requirements.
Integrate low level software with model-based code generated through MATLAB Simulink.
Develop automated and manual tests to perform requirements-based verification of the embedded software and software tools
Assess, measure, troubleshoot, and resolve issues with software execution and characteristics such as worst-case timing, memory margin, structural coverage, data coupling, and control coupling
Perform peer reviews of other team member’s contributions to the software development project
Follow, review, release and change software development processes.
Excellent communication skills, both written and verbal, with both internal & external customers
BS in Computer Engineering, Electrical Engineering, Computer Science, or a related degree from an accredited university
Minimum 8 years experience in real-time embedded software development using C or C++
Mastery of the C programming language
Experience in most of the following areas: hard real-time systems, built-in-test, tasking and interrupts, performing and developing tests, RTOS, bare-metal development, communication protocols (CAN, I2C, SPI)
Strong understanding of software configuration management and contemporary software build, integration, test, and deployment methodologies
Comfortable reading electrical schematics, documentation, and datasheets
Experience with electronics lab equipment such as programmable power supplies, signal generators, oscilloscopes, and bus analyzers
Knowledge of ARP 4754A and ARP 4761 processes and how they affect and inform the software processes
Experience with a requirements management tool/framework (IBM DOORS, Jama, Siemens Polarion)
Experience with the Dassault 3DX life cycle data management system
Experience with embedded software for electric motor control, battery management systems, and/or flight control systems
The team is currently full of multi-skilled individuals. No Holiday Cap
Health Spending Account
Equity Awards
We offer
a competitive salary, and the opportunity to work on some of the most exciting aerospace projects of our time. This role will be based in the Ottawa area, with occasional travel to our main hangar in Lindsay, Ontario required.
We offer
relocation allowances in appropriate cases.
We offer
a competitive salary, and the opportunity to work on some of the most exciting aerospace projects of our time. This role will be based in the Ottawa area, with occasional travel to our main hangar in Lindsay, Ontario required.
We offer
relocation allowances in appropriate cases.