About The Job
Embedded Software Engineers work within a growing team creating autonomous aircraft flight control and onboard mission execution software.
This includes systems and mission analysis, sensor integration, control system implementation and tuning, behaviour analysis, simulation and test, and interfacing with ground based mission control software.
Embedded Software Engineers are expected to demonstrate the ability to analyse, implement, document and test with attention to detail, in a tight knit software team and within the wider team of electronics, mechanical and industrial design engineers.
They are expected to constructively review code written by other team members and accept feedback on the code they produce, follow and refine processes and procedures.
Flight test days can be stressful. Our code can break the mission. Safety is paramount.
Teamwork is our answer to this and you can expect to be supported but also questioned and have your work double checked. You will be asked to do the same for others. \"Teamwork\" is not a throwaway HR platitude for us.
What You'll Do
* Design and implement embedded software and scripts running on flight controllers and associated aircraft subsystems for military applications.
* Design and implement sensor processing, flight plan execution, high level mission logic, communications protocols and telemetry.
* Contribute end customer documentation and training materials.
* Conduct thorough testing and validation during development with the use of simulation and analysis of data from real-world flight tests, as well as improving automated test tooling.
* Assist with test flight mission planning and customer demonstration mission planning.
* Collaborate with cross-functional teams, including application software engineers, electronics and mechanical engineers.
* Support production and production engineering departments
Required Qualifications and Experience
* Bachelor's degree in Robotics, Mechatronics, Embedded Software Engineering, or equivalent experience
* Eligible to obtain and maintain an Australian Government security clearance
* Experienced and proficient in C++ for Embedded Systems, or C for Embedded Systems and willingness to upskill
* Experience with scripting languages such as Python and Lua
* Familiarity with autonomous vehicle hardware and sensors, and associated software
* Proven experience with implementation and debugging of communications protocols
* Bare metal microcontroller and RTOS experience
* Demonstrated experience with writing and debugging software that interfaces with electronic hardware devices
* Ability to collaborate with the wider team to define and implement robust validation and verification
* Willingness to learn and share knowledge, building team cohesion and capacity
Preferred Qualifications and Experience
* Knowledge of Guidance, Navigation and Control (GNC) would be very highly regarded
* Experience with sensor fusion and Interial measurement units (IMU)
* Experience with autonomous systems of any type
* Experience with simulation tools and techniques for algorithm validation and testing
* Knowledge of safety standards and certification processes for autonomous systems
* An understanding of System Engineering concepts
* Experience with physical product production environments, including automated production test systems