
Software Engineer, C++
Job description
About the role
In this position, you will be responsible for designing and developing software tools that are essential for simulating and analyzing the flight systems utilized by SpaceX. This role requires you to take charge of specific features within a high-performance application that plays a crucial role in testing and controlling hardware that is vital to mission success.
Key facts
What you'll do
- Develop and sustain dependable software solutions across the entire application suite to ensure seamless operation.
- Construct prototypes aimed at evaluating design ideas and establishing technical boundaries for future developments.
- Create and implement modules that facilitate real-time streaming of flight system data, enhancing data accessibility and usability.
- Contribute to the maintenance and improvement of Continuous Integration/Continuous Deployment (CI/CD) pipelines, along with automating testing processes.
- Adhere to and promote high standards of software quality, ensuring optimal performance and reliability in all deliverables.
- Collaborate with cross-functional teams to gather requirements and translate them into technical specifications.
- Troubleshoot and resolve software issues, employing effective debugging techniques to enhance system performance.
- Engage in code reviews and provide constructive feedback to peers, fostering a culture of continuous improvement within the team.
- Document software designs and processes thoroughly to ensure clarity and maintainability for future reference.
- Participate in the development of training materials and provide support to team members as needed.
- Stay updated on industry trends and emerging technologies to bring innovative solutions to the team.
- Support the integration of new technologies and methodologies into existing systems to enhance functionality and efficiency.
Requirements
- A Bachelor's degree in engineering, mathematics, or computer science is required.
- At least 1 year of professional experience in developing applications using modern C++.
- Capability to obtain and maintain a Top Secret, Top Secret SCI, or DOE Level Q security clearance is essential.
- Compliance with ITAR regulations, necessitating U.S. citizenship, national status, permanent residency, refugee, or asylee status.
- Strong problem-solving skills and the ability to work independently as well as part of a team.
- Excellent communication skills, both verbal and written, to effectively convey technical information.
Nice to have
- Familiarity with additional programming languages such as Python, Java, or Go is advantageous.
- Experience with containerization technologies, specifically Docker and Kubernetes, is a plus.
- Understanding of relational databases, including Oracle, MySQL, or Postgres, to manage data effectively.
- Knowledge of various data serialization formats such as Protobuf, XML, YAML, and JSON is beneficial.
- Previous experience in real-time data processing and streaming applications is desirable.
- Skills in debugging, unit testing, and performance analysis to ensure software robustness and efficiency.
Skills & tools
- Proficiency in modern C++ programming.
- Familiarity with Python, Java, and Go for versatile software development.
- Experience with container orchestration tools like Docker and Kubernetes for efficient deployment.
- Knowledge of database management systems such as Postgres, MySQL, and Oracle.
- Understanding of data serialization formats including JSON, YAML, XML, and Protobuf for data interchange.
Practical notes
The salary range for this position is between $125,000 and $150,000 for Level I, and $145,000 to $175,000 for Level II. Employees who hold an active security clearance may receive a 10% differential, which can amount to an additional $20,000 annually when assigned to classified programs. The total compensation package includes stock options, stock awards, or long-term cash incentives, in addition to a comprehensive benefits package featuring a 401(k), medical, dental, vision, life insurance, and disability coverage. Employees are entitled to three weeks of vacation, over ten holidays, and five days of sick leave. Flexibility to work weekends and extended hours may be required based on project needs. Additionally, pre-employment and random drug and alcohol testing are mandatory for individuals involved in sensitive missions.