Job Title: NASA Embedded Sensor Software Development Engineer
Job Category: Engineering
Time Type: Full time
Minimum Clearance Required to Start: None
Employee Type: Regular
Percentage of Travel Required: Up to 10%
Type of Travel: Continental US
* * *
Responsibilities:
- Design and develop embedded flight software to control CO2, H20, and gas analyzer sensors.
- Create thorough unit tests from self-developed test plans using the UT-Assert framework and Gcov that test C code both structurally and functionally.
- Evaluate unit test case results including pass/fail results with path coverage, loop boundary limits, and Modified Condition/Decision Coverage (MC/DC).
- Troubleshoot issues with failed test cases.
- Perform C code reviews to spot errors in the code logic.
- Collaborate with other software engineers in resolving unit test case issues.
- Perform systems engineering in support of software requirements and interface definitions, design, and performance analysis.
- Perform software integration, test, and verification.
- Integrate and test software/hardware in avionics test bed and flight certification environments.
- Collaborate with engineering teams and contractors across multiple NASA programs and projects.
- Ensure adherence to JSC standard software process practices.
- Develop and maintain comprehensive test plans, test cases, and test scripts for software applications.
- Execute manual and automated tests to verify software functionality, performance, and security.
- Identify, document, and track software defects using issue tracking tools.
- Collaborate with developers to reproduce and resolve software defects.
- Perform regression testing to ensure that new changes do not adversely affect existing functionality.
- This work takes place at NASA/JSC in Houston, TX, a highly stimulating and dynamic environment that is critical in human space flight and the space exploration initiative.
Qualifications:
Required:
- Must be a U.S. Citizen or Permanent Resident.
- B.S. in Aerospace, Electrical, Software, Computer or Systems Engineering, Computer Science, Biomedical Engineering, or related disciplines required.
- At least three years of experience in embedded software development. More experience is highly valued.
- Strong C programming skills.
- Experience developing software in a Linux environment.
- Experience developing C/C++ software unit tests in Aerospace or other industries, e.g., commercial software, oil and gas, petrochemical, etc. Experience should include utilizing a unit test framework such as Google Test (gTEST), UT-Assert or CppUnit.
- Experience developing embedded firmware for microcontrollers.
- Must have significant experience in the entire software life cycle.
- Must be flexible, open to new challenges in a dynamic environment, and possess strong technical expertise combined with strong verbal and written communication skills.
- Requires the ability to manage multiple priorities with little supervision.
- Must be a highly responsible, team-oriented individual with strong work ethic.
Desired:
- M.S. in Computer Science, Software Engineering, Electrical or Computer Engineering, Aerospace Engineering, Biomedical Engineering, or related disciplines.
- Preferred that previous experience be in aerospace systems and vehicles. Experience is also valued in other industries, e.g., medical, petrochemical, oil and gas, where software function, quality, and associated processes utilized can impact human safety.
- Experience using GitLab and the Git version control system.
- Python programming skills.
- Experience developing software using various bus communication protocols (e.g., RS-485, RS-422, RS-232, Low-Voltage Differential Signaling (LVDS), 1553, USB, Ethernet).
- Experience in NASA Core Flight Software (CFS).
- Experience in software and systems integration.
- Experience in automated testing.
- Experience in verification testing.
- Experience using Jira
- Experience with both manual and automated testing.
- Experience with Agile/Scrum methodologies.
- Experience in human-rated space vehicle software, e.g., Space Shuttle, International Space Station, Orion, Commercial Crew, Gateway, in a range of systems (e.g., C&T, C&DH, GN&C).
- Familiarity with CMMI Level 3 (or above) process areas.
-
Pay Range:
There are a host of factors that can influence final salary including, but not limited to, geographic location, Federal Government contract labor categories and contract wage rates, relevant prior work experience, specific skills and competencies, education, and certifications. Our employees value the flexibility at CACI that allows them to balance quality work and their personal lives. We offer competitive compensation, benefits and learning and development opportunities. Our broad and competitive mix of benefits options is designed to support and protect employees and their families. At CACI, you will receive comprehensive benefits such as; healthcare, wellness, financial, retirement, family support, continuing education, and time off benefits.
The proposed salary range for this position is:
$76,000 - 155,700 USD