Software Application Engineer IV
Responsibilities
- Engineering Collaboration
- Work closely with cross-functional engineering teams to design and implement solutions that ensure successful system bring-up, component compatibility, and seamless integration.
- Collaborate closely with customers and internal teams to deliver robust operational solutions and high-quality technical support.
- Technical Development
- Oversee the design and deployment of essential software development kits (SDKs) that serve as the interface layer for the hardware platform.
- Troubleshoot and resolve software integration issues through systematic debugging and analysis.
- Effectively manage code and documentation updates using version control systems.
Qualifications
- Bachelor’s degree or higher in computer science, software engineering, computer engineering, electrical engineering, or similar engineering discipline.
- Minimum eight (8) years of experience in a specialized functional discipline. OR twelve (12) years of experience may be considered in lieu of a Bachelors Degree. OR six (6) years of experience may be considered with a Masters Degree. OR three (3) years of experience may be considered with a PhD.
- Proficient in C, C++, and assembly (ARM, SPARC, RISC).
- Deep understanding of the software stack, spanning low-level drivers, board support packages (BSPs), and integration with higher-level components, including open-source frameworks, OS distributions, and middleware.
- Experienced in interfacing with a range of communication protocols, including UART, SPI, I²C, CAN, SpaceWire, and MIL-STD-1553.
- Experience with development toolchains and environments such as GCC for ARM and SPARC architecture, as well as debugging tools including GDB, JTAG, and in-circuit emulators.
- Expertise in multiple operating systems, with a focus on Embedded Linux environments such as Yocto, Buildroot, and Debian for ARM and LEON architecture.
- RTOS experience (Linux, RTEMS, VxWorks, FreeRTOS).
- Familiarity with Rust and Ada/SPARK, both commonly used in safety-critical and aerospace software development.
- Familiarity with satellite onboard computers (OBCs) and command and data handling (C&DH) subsystems, including their roles in spacecraft control, telemetry, and data processing.
- Familiarity with software development standards and guidelines defined by ECSS (European Cooperation for Space Standardization) and NASA, particularly as they apply to aerospace and mission-critical systems.
- Familiarity with principles of fault-tolerant software design for space and high-reliability systems, as well as radiation effects such as Single Event Upsets (SEU) and Total Ionizing Dose (TID).
About Frontgrade
We build mission-critical electronics that perform without compromise in the world’s most demanding environments, from deep space to national defense. With decades of proven heritage, we deliver high-reliability components, subsystems, and integrated solutions trusted when failure is not an option. But our strength is not just in what we build. It is in the people who make it possible. From engineers and product managers to sales teams, marketers, and skilled manufacturing professionals, every role plays a direct part in enabling missions that protect, explore, and connect our world. We move with purpose, collaborate across disciplines, and take pride in delivering solutions our customers rely on in the highest-stakes environments. If you want your work, whatever your specialty, to contribute to something bigger, you will find your place at Frontgrade.