Senior Firmware Engineer
Full-time / on-site in the San Diego office (Relocation available for the successful candidate)
Firestorm as a company grew out of the simple question: how does a US ally country with a relatively low defense budget deter an aggressor state entity with a vastly larger war chest? We’re building the very answer to that question, something we call “democratized deterrence.” Firestorm is a VC-backed, defense-meets-Silicon Valley technology company developing mission-adaptable aerial vehicles to put the power back into the hands of the operator. We aim to upend the current defense procurement cost paradigm by bringing world-class capabilities to bear at meaningfully lower costs.
We are looking for a highly skilled and motivated Senior Firmware Engineer to join our team onsite at our San Diego office. In this role, you will be at the forefront of developing and implementing advanced firmware solutions that power our mission-adaptable aerial vehicles. Your expertise will be crucial in designing and enhancing the embedded systems that ensure our UAS/drones operate efficiently and securely in diverse and challenging environments. This position requires a deep understanding of embedded systems, bare-metal programming, real-time operating systems, and practical experience with STM32 microcontrollers.
What You’ll Be Doing:
- Develop and maintain firmware for STM32 microcontrollers and other embedded systems, writing efficient and reliable bare-metal code.
- Design and implement device drivers for hardware peripherals, ensuring seamless integration with the overall system.
- Optimize and debug embedded software to ensure high performance, reliability, and adherence to timing constraints.
- Implement secure coding practices to protect firmware against vulnerabilities and ensure the integrity of embedded systems.
- Collaborate closely with hardware engineers to design and integrate firmware with hardware components, participating in schematic reviews and hardware bring-up.
- Participate in system architecture design and contribute to the overall embedded system design, including hardware-software co-design considerations.
- Lead the design and execution of comprehensive test plans for embedded systems, including unit testing, integration testing, and system validation.
- Keep abreast of the latest developments in embedded systems, microcontrollers, real-time operating systems, and secure coding practices. Assess new technologies and their applicability to ongoing or future projects to continuously enhance system capabilities and introduce innovative solutions to complex problems.
Minimum Qualifications:
- Advanced degree in Electrical Engineering, Computer Engineering, or a related field.
- Minimum of 5 years of experience as a firmware or embedded software engineer, with extensive expertise in C/C++ programming for embedded systems.
- Proven experience in developing firmware for STM32 microcontrollers or similar ARM Cortex-M microcontrollers.
- Strong knowledge of bare-metal programming and real-time operating systems (RTOS).
- Experience with real-time debugging tools like JTAG/SWD debuggers and logic analyzers.
- Solid understanding of embedded software development processes, including version control systems (e.g., Git), debugging tools, and build systems.
- Experience with hardware-software integration and troubleshooting at the hardware level.
- Strong understanding of embedded system architectures, microcontroller peripherals, and communication interfaces (e.g., SPI, I2C, UART, CAN).
- Knowledge of secure coding practices and experience in developing secure embedded software.
- Experience with cross-compilation toolchains.
- Extensive experience with direct register-level programming and manipulation for microcontroller peripherals.
- Deep understanding of microcontroller timers, PWM, ADC/DAC, DMA, and configuring them.
- Familiarity with network protocols and socket programming for embedded systems.
- US citizen or permanent resident, eligible to obtain and maintain a high-level US Government security clearance.
Preferred Qualifications:
- Knowledge of bootloaders and firmware update mechanisms.
- Familiarity with the PX4 Autopilot ecosystem and practical experience with UAS/drones.
- Experience with real-time operating systems such as NuttX and SafeRTOS.
- Proficient in interpreting Interface Control Documents (ICDs) and implementing hardware interfaces based on these specifications for integration with external systems and devices.
- Familiarity with hardware design principles, including an understanding of schematics and PCB layouts.
- Proficiency in scripting languages such as Python or Bash for automation and tooling.
- Experience with code analysis tools and techniques for embedded systems, including static analysis and unit testing frameworks.
- Knowledge of sensor integration and UAV flight controllers.
- Experience with low-power design and optimization techniques in embedded systems.
- Experience working in an agile development environment, with a strong emphasis on CI/CD practices for embedded systems.
- Understanding of hardware security modules (HSM) and secure boot processes.
- Experience with wireless communication technologies (e.g., Wi-Fi, Bluetooth, LoRa).
- Proficiency with development tools and IDEs such as Keil uVision, IAR Embedded Workbench, GCC ARM toolchain, and debugging tools like GDB and openOCD.
- Prior involvement in projects requiring compliance with military or defense industry standards and regulations, especially those related to secure and reliable embedded systems.
What Makes You a Good Fit:
- Strong analytical and problem-solving skills, enabling you to tackle complex challenges in embedded systems development.
- Excellent communication and teamwork abilities.
- Ability to work independently and drive projects to completion, demonstrating initiative and leadership in managing tasks without direct supervision.
- Passion for innovation and continuous improvement in defense and embedded technology.
- High adaptability to rapidly changing technologies and operational demands.
- Commitment to quality and meticulous attention to detail.
- Empathy and interpersonal skills, critical for mentoring junior engineers and integrating feedback from diverse team members.
- Strong organizational skills, capable of managing multiple priorities simultaneously while meeting deadlines and project milestones.
- Proactive in learning and applying new technologies and methodologies in embedded systems.
Bonus Points:
- Demonstrated ability to write safety-critical code compliant with MISRA standards.
- Experience with embedded Linux development and familiarity with build systems like Yocto or Buildroot.
- Hands-on experience with the MAVLink protocol and its implementation in drone systems and ground control stations.
- Participation in open-source embedded software projects or contributions to the embedded community.
- Knowledge of power management strategies in embedded systems.
- Experience with formal methods and model-based design approaches in embedded software development.
- Experience with Rust programming language for embedded systems.
- Understanding of hardware-in-the-loop (HIL) testing methodologies.
- Experience with hardware security features like TrustZone or TPM.
- Knowledge of signal processing algorithms and their implementation on embedded platforms.
Firestorm is committed to hiring and retaining a diverse workforce. We are proud to be an Equal Opportunity/Affirmative Action Employer, making decisions without regard to race, color, religion, creed, sex, sexual orientation, gender identity, marital status, national origin, age, veteran status, disability, or any other protected class. U.S. Citizenship is required for all positions with a government clearance and certain other restricted positions. Our culture at Firestorm fosters collaboration, respect, and trust to empower passionate people to do their best work. We offer a competitive salary, comprehensive benefits, and opportunities for career growth.
As a Senior Firmware Engineer at Firestorm, you will play a pivotal role in enhancing the capabilities of our current and next-generation UAS. If you are a seasoned firmware professional with a profound interest in integrating complex embedded systems and a passion for pushing the boundaries of defense technology, we invite you to join our team and contribute to our mission of redefining low-cost mission-adaptable aerial vehicles.
Salary range: $150,000 to $180,000
To apply, please fill out the online application and attach your resume. Please include your Linkedin profile link.
careers@launchfirestorm.com
#J-18808-Ljbffr