Senior Embedded Software Engineer - Flight Software

E-Space

$130K — $180K *
Aerospace & Defense
Less than 5 years of experience
Job Overview by Ladders

Qualifications

  • 5-7 years experience in aerospace software development
  • Proficiency in C/C++ and scripting languages like Shell or Bash
  • Experience with embedded and multi-core platforms
  • Familiarity with communication protocols (UART, CAN, SPI, I2C)
  • Expertise with Git or similar version control systems
  • Knowledge of debugging tools like JTAG and GDB
  • Bachelor's or Master's degree in Computer Science or Electronics Engineering preferred

Responsibilities

  • Architect, design, and maintain software for real-time embedded systems
  • Implement communication protocols and specifications for space software
  • Design and implement Ethernet networks for spacecraft communication
  • Manage application integration on customized platform software
  • Implement efficient memory and process management
  • Develop automated testing frameworks for embedded systems
  • Support debugging of real-time and critical faults

Benefits

  • Collaborative global team environment
  • Opportunities for further training and professional growth
  • Commitment to equal opportunities
  • Engagement with cutting-edge IoT and embedded tech
  • Flexible working arrangements may be available
Full Job Description
We are seeking a highly skilled and motivated FSW/Embedded Software Developer to design, develop, and optimize software for customized embedded devices, with a strong emphasis on space-related software and algorithms. The role involves designing and developing software for bare-metal, RTOS, and real-time Linux environments, real-time performance, system reliability, and implementing robust recovery mechanisms. You will also contribute to testing and automation.

What you will be doing:

Core Development

  • Embedded Software Development: Architect/Design, write, debug, and maintain efficient software for real-time embedded systems, including mission critical Flight Software and communication with other space-specific software subsystems/modules, such as TTC (CCSDS protocol), Power, Thermal, GNC, FDIR, CFDP.


  • Communication Protocols and Specifications: Implement protocols used in space-grade software such as UART, CAN, SpaceWire, SPI, I2C, and Ethernet. Experience with Linux bridging, DSA (Distributed Switch Architecture), and L2 protocols such as RSTP/MSTP, HSR, or FRER for redundant network fabrics is highly valued


  • Networking and Avionics Fabrics: Design and implement L2 Ethernet networks for inter-board communication on spacecraft, including switch bring up, PHY configuration, and topology design. Configure and debug L2 redundancy protocols (RSTP, HSR, FRER) for fault-tolerant fabrics. Implement deterministic networking using TSN features where mission profiles require bounded latency.


  • Application Integration: Integrate and manage provided applications on top of the customized platform software. Design and bring up Ethernet-based avionics networks, including PHY/MAC initialization, switch configuration, and L2 redundancy protocols.


  • Operational Management: Design and implement efficient memory management, process management, software updates, reprogramming and power saving modes for embedded systems. Experience with multi-board Ethernet fabrics (mesh, ring, or tree topologies) for inter-subsystem communication is a plus.


Testing and Support

  • Test Framework Development: Create and maintain automated testing frameworks for embedded systems, including HIL, SIL, PIL.


  • Support: Provide support for debugging of real-time and critical faults.


  • Debugging and Validation: Use tools like oscilloscopes, logic analyzers, and protocol analyzers to test and debug embedded software and hardware interfaces.


Collaboration and Documentation

  • Hardware Interaction: Work closely with global software teams to contribute to the new designs and ensure seamless software-hardware integration.


  • Documentation: Prepare and maintain technical documentation.


What you bring to this role:

    • Hands-on: Proven record of designing and developing significant working software in aerospace applications.

    • Programming Languages: Proficiency in C/C++ and scripting languages like Shell or Bash; familiarity with Python.

    • Embedded Systems: Experience with embedded and multicore platforms and their toolchains. Experience with Yocto is a big plus.

    • Communication Protocols: Knowledge of key hardware and software protocols such as UART, CAN, SPI, I2C. TCP and UDP.

    • Upgrades: Experience with secure firmware updates and reprogramming mechanisms.

    • Debugging Tools: Proficiency with debugging tools like JTAG, GDB, and serial debuggers.

    • Version Control: Expertise with Git or similar version control systems.


Bonus points:

    • Education: Bachelor's or Master's degree in Computer Science, Electronics Engineering, or a related field.


    • Familiarity with wireless communication technologies (e.g., Wi-Fi, Bluetooth, Zigbee, LoRa).

    • Familiarity with hardware simulation tools and flatsat environments for testing.

    • Familiarity with CI/CD pipelines and automated build/test workflows.

    Key Attributes
    • Strong analytical and debugging skills.

    • Passion for quality and attention to detail in software development and testing.

    • Ability to work collaboratively in cross-functional and global teams.

    • Commitment to staying updated with the latest in IoT, embedded systems, and testing automation technologies.

    • A willingness to undertake further relevant training.

    • An understanding and commitment to equal opportunities.

    • Time management, self-reliance and willingness to learn.


$130,000 - $180,000 a year

Similar Jobs

More Jobs at E-Space

More Aerospace & Defense Jobs

Find similar Senior Embedded Software Engineer - Flight Software jobs: