About the job
Join us at Reflect, where speed, ownership, and the ability to drive change are at the forefront of our mission. We are eager to learn about your notable achievements and experiences, regardless of the domain.
About the Role
As Reflect's inaugural Embedded Software Engineer, you will play a pivotal role in designing, coding, and deploying embedded flight software for our groundbreaking vehicles. You'll have the opportunity to innovate and leverage established aerospace technologies to swiftly create a dependable, streamlined, and cost-effective system. Your contributions will ensure effective communication, control, and troubleshooting of vehicles during missions, carrying substantial responsibility. Following our initial mission, you'll have the chance to expand your foundational architecture for Reflect’s future fleet, which we aim to manufacture at scale.
Key Responsibilities
Design and implement the flight software for Reflect’s inaugural satellite, including selecting operating systems, mission management software, command/data handling, and communication protocols.
Develop software that is reliable from the first deployment, easily validated, modular, and introspectable.
Create highly dependable, fault-tolerant, and remotely updatable software systems resilient to the LEO environment.
Collaborate with avionics engineers on the selection of components and processors, as well as electrical system architecture.
Implement and/or integrate software for electromechanical components like star sensors, ADCS, motors, battery management systems, and thermal systems.
Design embedded software systems that facilitate satellite subsystem hardware testing.
Create embedded software with a focus on validation ease, implementing tests including unit tests, software simulation, and HIL/flatsat testing.
Establish best practices and lead by example in software development, version control, and validation processes.
Ideal Qualifications
Proven experience in implementing C and/or C++ software on autonomous electromechanical systems, including robots, autonomous vehicles, drones, or spacecraft.
Strong understanding of software design and architecture for high-reliability systems, including considerations for fault tolerance, validation, and remote operations.
Familiarity with embedded systems and experience in managing complex software development processes.

