645 Systems Software Developer jobs in Sunnyvale, CA
Scroll to load more...
Senior Embedded Software Engineer - Flight Software
E-Space
Senior Embedded Software Engineer - Flight Software
This job is still taking applications, but it's been up a while.
About the job
E-Space develops sustainable low Earth orbit satellite networks bridging Earth and space, delivering new satellite capabilities and connectivity-inspired solutions.
Requirements
- Proficiency in C/C++
- Experience in embedded platforms
- Knowledge of communication protocols
- Debugging and testing skills
- Software development experience
Qualifications
- Bachelor’s or Master’s in related field
- Strong analytical skills
- Attention to detail
- Team collaboration ability
Full job description
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:
Bonus points:
Key Attributes
Duey AI may make mistakes. Please double-check key information.