About the RoleThe Principal Software Engineer role involves designing, developing, and testing software applications for space systems and technologies. This advanced position requires extensive expertise in multiple programming languages, an advanced understanding of software development principles, and the ability to design, architect, and implement complex software systems. The role includes writing clean, maintainable code, collaborating with team members to understand project requirements, and contributing to the development of innovative software solutions. Additionally, this position requires a deep understanding of software engineering processes, advanced algorithmic knowledge, and system scalability. The role also involves providing technical leadership and mentorship to other engineers.
In this role, you will design, develop, and test software applications for space systems and technologies while writing clean, maintainable code that adheres to best practices and coding standards. You will architect and implement complex software systems to meet project requirements and collaborate with team members to understand project needs, contributing to the development of effective software solutions. Utilizing version control systems such as Git, you will manage code changes and work collaboratively with team members. You will participate in code reviews to ensure code quality and adherence to development standards, troubleshoot and resolve software-related issues in a timely manner, and document software configurations, processes, and procedures for future reference. Staying current with industry trends and advancements in software development and space technologies will be essential. Additionally, you will independently contribute to the design and development of software applications, conduct unit tests, and participate in code reviews. You will also provide technical leadership and mentorship to other engineers, fostering collaboration and growth within the team.
About YouOur mission is driven by an unyielding commitment to advancing space-based technology in service of our customers and safeguarding national security. We seek individuals who are passionate about innovating beyond boundaries and relentlessly pursuing solutions that protect, preserve and empower – to join us in this critical mission.
We’re looking for team members who align with our values, mission and goals – while also meeting the minimum qualifications below. The preferred qualifications are a bonus, not a requirement.
Minimum Qualifications:
Requires bachelor's degree in a related field (or equivalent work experience in lieu of degree or master's +10 yrs experience).
Typically, 12+ years of related experience.
Extensive expertise in multiple programming languages and software development principles.
Ability to design, architect, implement, and test complex software systems.
Expert understanding of software engineering processes, advanced algorithmic knowledge, domain-specific design patterns, performance tuning, and system scalability.
Mastery in writing scalable, optimized code, ability to design complex software systems, and knowledge of best practices, including secure coding, and system architecture principles.
Ability to independently contribute to the design and development of software applications, conduct unit tests, and participate in code reviews.
Experience with different software development methodologies such as Agile and Scrum/Kanban.
The ability to obtain and maintain a U.S. Security Clearance is required.
Preferred Qualifications:
Advanced degree in Computer Science, Software Engineering, or a related field.
Extensive experience with kernel-level programming.
Proficiency in programming languages (Python, C++, Java) and their ecosystems.
In-depth knowledge of scripting languages and automation tools.
Proven experience with software development methodologies such as Agile or Kanban/Scrum.
Exceptional analytical skills and meticulous attention to detail.
Superior communication skills and the ability to work effectively in a collaborative team environment.
Demonstrated ability to lead large-scale software projects from inception to completion.
Strong strategic thinking and decision-making skills.
Strong analytical skills, performance profiling, and debugging complex systems.
Excellent communication and teamwork skills, with experience using collaborative tools (GitHub, GitLab, Bitbucket).
Ability to write and maintain technical documentation.
Familiarity with SysML/UML to create software designs.
Experience utilizing and setting up static analysis tools.
Compensation:
Pay Range:
$184,628.00 - $253,884.50
Your actual base compensation will be determined on a case-by-case basis and may vary based on job-related knowledge and skills, education, experience, internal equity and market competitiveness.
IMPORTANT NOTICE:
This position requires the ability to obtain and maintain a U.S. Security Clearance. U.S. Citizenship status is required as this position needs an active U.S. Security Clearance for employment. Non-U.S. citizens may not be eligible to obtain a security clearance. The Department of Defense Consolidated Adjudications Facility (DoD CAF), a federal government agency, handles the adjudicative aspects of the security clearance eligibility process for industry applicants. Adjudicative factors which affect the outcome of the eligibility determination include, but are not limited to, allegiance to the U.S., foreign influence, foreign preference, criminal conduct, security violations and illegal drug use.