Senior Software Engineer (Flight Software)
Posted Updated
- Muon seeks a Flight Software Engineer to join our satellite flight software team
- The ideal candidate is a self-motivated versatile software developer with significant previous experience developing robust bare-metal / RTOS embedded devices or appliances
- In this role, you will design, develop, integrate, and test the software and firmware that runs on our orbiting satellites
- This position is based at our San Jose, CA office
- Integral member of the team defining and building Muon’s satellite bus platform
- Translate concepts and requirements into design and working implementations, supporting through to on-orbit operations
- Design, bring up, and support the embedded software environment that runs in our satellite flight systems and peripherals using ARM Cortex-M CPUs
- Participate in evaluating and selecting technologies for our software foundation
- Write application, platform, and driver functionality in our flight software environment and teach others how to use it
- Integrate compute and peripheral subsystems in both software and hardware
- Collaborate with hardware team members on the design and bring up of Muon hardware
- Collaborate with software team members to set flight software architecture, select infrastructure and tools, and communicate with cloud backends
- Participate in developing software and hardware-in-the-loop test strategies
Benefits
- 100% health, dental, and vision coverage for employees; 50% coverage for dependents (Concierge Medical offered through One Medical where available)
- Parental leave for primary and secondary caregivers
- Generous time off policy
- 401(k) plan through Betterment and equity management through Carta
- Fully stocked kitchen at our HQ and we cater lunch 3 days per week
- Dog-friendly office
- Great embedded systems fundamentals: resource-efficient design, low-level drivers, bit manipulation, responsive software and IRQ handling, RTOS frameworks, I/O and communication buses
- Strong C/C++ programming, with some practical familiarity of other languages
- B.S., M.S., or Ph.D. in computer science, electrical engineering, or related field
- Read and understand hardware data sheets
- Integration and control of external hardware devices
- Excellent communication and presentation skills
- 8+ years experience as a software engineer in a team environment
- Knowledge of industry-standard data formats and schemas (ProtoBuf, YAML, JSON, etc)
- Familiarity with a Linux-based development environment
- Experience with one or more of: embedded linux, FPGA, HW design, RF communication systems, cloud/server infrastructure, network architecture
- End-to-end development from product concept to delivery to customer/market
- We encourage you to apply, even if you don’t check all the boxes, and we look forward to reviewing your application!
