Software System Design: Utilize your expertise in embedded systems software design to develop firmware for the control and operation of our embedded systems in weapons applications.
Prototyping and Testing: Take an active role in sourcing components, firmware specifications, system integration, and troubleshooting of completed embedded system designs, ensuring they meet performance and quality standards.
Embedded Systems Controls: Implement control algorithms for the precise movement and operation of embedded systems within the weapons platform.
Collaboration: Collaborate closely with cross-functional teams to seamlessly integrate your embedded system designs into the broader project scope.
Hardware Interaction: Work in tandem with hardware engineers to ensure optimal communication between software and embedded hardware components.
Continuous Learning: Stay abreast of the latest technologies and methodologies in embedded systems engineering to bring innovative solutions to the team.
Quality Assurance: Ensure that all software designs and integrations meet industry and defense standards for quality, performance, and safety.
Documentation: Maintain detailed records of software designs, specifications, and testing protocols for compliance and future reference.
Qualifications:
Bachelor’s or Master’s degree in Software Engineering, Computer Science, or a related field.
3+ years experience working on embedded systems for aerospace applications.
Proficiency in C/C++/Rust, or similar programming languages for embedded systems.
Experience using RTOS.
Proven experience in embedded software development and prototyping, preferably in a product development setting.
Hands-on experience with microcontrollers and embedded systems.
Solid fundamentals of the entire software development life-cycle, including architecture, design, development, deployment and support of complex software systems.
Proactively identify opportunities for improvement and take initiative to propose and implement solutions that enhance efficiency, quality and overall project success.
Contribute to agile project planning and task generation, including communicating risks, issues and blockers.