Software Quality Assurance Engineer
This is the position that turns the quality program into something that actually happens in the software.
You will implement the standards and processes the Quality Assurance Manager establishes including code review discipline, static analysis, coverage expectations, requirements traceability, and defect management and embed them in the development workflow so they are part of how software gets built rather than a gate at the end.
The more important half of the job is earlier than that. You will participate in design reviews and architecture discussions with the objective of making quality a design element: identifying testability problems while they are still cheap to fix, pushing for error handling and fault behavior to be specified rather than improvised, and asking how a design will be verified before it is built.
What you will do
Quality baked into design
- Participate in software design reviews and architecture discussions as a quality stakeholder
- Assess designs for testability, observability, error handling, and fault recovery behavior
- Challenge designs whose verification approach is unclear, and work with engineers to resolve it before implementation
- Contribute quality criteria to software requirements and interface definitions
Standards implementation
- Implement and maintain coding standards, including safety and security coding guidance appropriate to embedded targets (MISRA C, CERT C, or equivalent)
- Establish peer review practice like entry criteria, checklists, review coverage expectations, and the evidence trail
- Configure and tune static and dynamic analysis tooling so findings are actionable rather than noise
- Define unit and integration test expectations, including coverage criteria appropriate to the criticality of the component
Traceability and verification linkage
- Maintain bidirectional traceability between software requirements, design elements, code, and tests
- Verify that software requirements are testable and that tests actually exercise what they claim to
- Coordinate with the systems engineering and test teams so software verification evidence supports system-level verification
- Support functional and physical configuration audits of software baselines
Defect management and analysis
- Own defect triage discipline, classification, and lifecycle tracking
- Perform root cause and trend analysis; identify the process gaps behind recurring defect classes
- Analyze escaped defects to determine which quality activity should have caught them, and adjust the practice accordingly
- Feed defect and review metrics into the program's effectiveness measurement
Process assurance
- Audit software work products and development processes against the documented standards
- Verify that development activities produce the evidence the quality program requires
- Support quality gates within CI/CD in coordination with the DevOps and cybersecurity engineering functions
- Identify where process is being circumvented and address the cause rather than the symptom