Summary
Intuitive Machines is a space infrastructure company that builds spacecraft, connects networks, and operates infrastructure-as-a-service for commercial, civil, and national security customers. The Simulations Software Developer will design and implement software models for spacecraft simulators, develop and test simulation applications, and collaborate with software and systems engineers on technical solutions and system design.
Responsibilities
- Design and implement models of spacecraft components and/or subsystems for all-software spacecraft simulators
- Read and interpret spacecraft hardware specifications, Interface Control Documents (ICDs), and technical documentation to develop accurate software models
- Work with and enhance existing simulation codebases while maintaining system functionality and architecture
- Adhere to current satellite and software industry best practices
- Deploy code through Continuous Integration/Continuous Deployment (CI/CD) pipelines and develop automated tests
- Collaborate with team members to find solutions to design and evaluate technical trade-offs
- Communicate cross-functionally with software and systems engineers to ensure a coherent system design
- Write and perform unit, integration, and system-level tests on software applications
- Participate in customer-facing design reviews and other technical discussions
- Mentor junior engineers and contribute to team technical knowledge sharing
Skills
- Must be a U.S. citizen with the ability to obtain a government security clearance
- BS in Computer Engineering, Computer Science, Mathematics, Physics, or Aerospace Engineering, or related disciplines. Four additional years of experience may be substituted for a degree
- A master's degree may be considered as 2 years of professional experience
- 2 years of professional software development experience, preferably in simulation of spacecraft or other complex systems
- Demonstrated ability to read and understand technical documentation (hardware specifications, ICDs, datasheets) and translate into functional code
- Proficiency with Linux
- Proficiency with software compilers and other software development tools
- Experience with CI/CD pipelines and automated testing frameworks (e.g., GitLab CI, Jenkins, GitHub Actions)
- Developing software in C++ or Python
- Debugging and troubleshooting complex systems
- Writing unit tests, integration tests, and system-level tests
- Software development life cycle
- Agile methodologies
- Version control systems (Git)
- (C++ preferred for simulation applications)
- Strong applied mathematics skills with proven ability to implement mathematical algorithms in software (numerical methods, linear algebra, differential equations, computational physics)
- Experience with simulation or modeling of physical systems (aerospace, robotics, automotive, or similar domains)
- Basic understanding of TCP/IP networking concepts
- Experience with test frameworks (Google Test, pytest, CTest)
- Familiarity with spacecraft hardware interfaces and protocols (UART, SPI, I2C, CAN, SpaceWire, MIL-STD-1553)
- Knowledge of spacecraft command and telemetry protocols (CCSDS, Space Packet Protocol)
- Experience with distributed simulation architectures or middleware (DDS, ZeroMQ, etc.)
- Understanding of software design patterns and object-oriented design principles
- Experience with containerization technologies (Docker)
- Ability to learn quickly and multi-task in a dynamic and fast-paced work environment
- Passion to work on space applications
- Experience in spacecraft operations, design, or testing
- Strong communication and collaboration skills
Qualifications
Must Haves
- Must be a U.S. citizen with the ability to obtain a government security clearance
- BS in Computer Engineering, Computer Science, Mathematics, Physics, or Aerospace Engineering, or related disciplines. Four additional years of experience may be substituted for a degree
- A master's degree may be considered as 2 years of professional experience
- 2 years of professional software development experience, preferably in simulation of spacecraft or other complex systems
- Demonstrated ability to read and understand technical documentation (hardware specifications, ICDs, datasheets) and translate into functional code
- Proficiency with Linux
- Proficiency with software compilers and other software development tools
- Experience with CI/CD pipelines and automated testing frameworks (e.g., GitLab CI, Jenkins, GitHub Actions)
- Developing software in C++ or Python
- Debugging and troubleshooting complex systems
- Writing unit tests, integration tests, and system-level tests
- Software development life cycle
- Agile methodologies
- Version control systems (Git)
Nice to Haves
- (C++ preferred for simulation applications)
- Strong applied mathematics skills with proven ability to implement mathematical algorithms in software (numerical methods, linear algebra, differential equations, computational physics)
- Experience with simulation or modeling of physical systems (aerospace, robotics, automotive, or similar domains)
- Basic understanding of TCP/IP networking concepts
- Experience with test frameworks (Google Test, pytest, CTest)
- Familiarity with spacecraft hardware interfaces and protocols (UART, SPI, I2C, CAN, SpaceWire, MIL-STD-1553)
- Knowledge of spacecraft command and telemetry protocols (CCSDS, Space Packet Protocol)
- Experience with distributed simulation architectures or middleware (DDS, ZeroMQ, etc.)
- Understanding of software design patterns and object-oriented design principles
- Experience with containerization technologies (Docker)
- Ability to learn quickly and multi-task in a dynamic and fast-paced work environment
- Passion to work on space applications
- Experience in spacecraft operations, design, or testing
- Strong communication and collaboration skills
Benefits
- Paid time off for eligible employees
- Health and welfare insurance for eligible employees
- 401(k) for eligible employees