Staff Embedded Software Designer
Job Summary
Key Responsibilities:
Design develop andmaintainreliable high-quality embedded software for both spacecraft and ground-based systems supporting a growing fleet of satellites
Linux networking infrastructure including routing control-plane anddataplaneintegration
Developing software for FPGA-based platforms including bring-up driver integration and optimization of memory-mapped interfaces between processing cores and custom IP.
Develop automated tests validation tools and technical documentation to support robust software delivery and long-term maintainability
Participate in software architecture discussions design reviews and code reviews to ensure software quality and system reliability
Collaborate closely withcross-functionalteams to define system requirements debug complex issues and evolve system architecture
Identifyperformance gaps reliability risks and architectural shortcomings in existing systems and drive improvements across the software stack
Provide technical leadership mentorship and guidance to junior engineers while contributing to engineering best practices and development standards
Required Skills & Qualifications:
5 years of embedded software development experience
Bachelors degree in Computer Science Computer Engineering Electrical Engineering or equivalent experience
Strongproficiencyin C and modern C
Experience developing software for embedded Linux environments
Experience working close to operating system internals including concurrency IPC synchronization memory management and hardware/software interfaces
Experience integrating and debugging complex software systems across multiple abstraction layers
Experience with embedded build systems and toolchains such asYocto/OpenEmbeddedBuildrootCMake or similar
Ability to debug andoptimizesoftware in resource-constrained or performance-sensitive environments
Strong communicationand collaboration skills in cross-functional engineering environments
Ability to work effectively across distributed teams and time zones
Bonus Points:
Masters degree in Computer Science Computer Engineering or related field
Experience developing software for aerospace applications
Experience implementing embedded security solutions such as secure boot hardware security modules (HSMs) certificate/key management authentication or encrypted communications
Familiarity with Linux networking concepts and infrastructure including routing interfacesnetlink or packet-processing pipelines
Experience developing multi-stage bootloaders
Strong knowledge of computer networking and modern networking protocols
Experience with RTL (Verilog and/or VHDL) and embedded SoCs
Required Experience:
Staff IC