Lockheed Martin is a leader in aerospace and defense, and they are seeking a Senior Staff Software Quality Engineer to represent Core Software Quality Engineering. The role involves ensuring high-quality software development processes, leading supplier quality management activities, and collaborating with software development stakeholders to improve efficiency and security in software development.
Responsibilities:
- Represent Core Software Quality Engineering and define the guidance and mandatory tasks required to perform the DevStar process for software and software system development
- Ensure that program/project software development processes are established and followed that produce high quality products
- Partner with program software development stakeholders to accomplish the following; (1) streamline software development processes to deliver software faster and more efficiently, (2) ensure high-quality software through rigorous testing, automation, and adherence to DevStar requirements, (3) integrate Security into the development lifecycle from the beginning to ensure secure software, and (4) promote consistent processes and reusable components to reduce redundancy and improve efficiency
- Establish AC-9337 (DevStar Process) quality checklists, standards, guidelines, and quality gates, including the documentation and defect management processes
- Participate in software development activities. Evaluate performed processes and new/modified software work products against applicable process descriptions, standards, and procedures
- Improve the design and execution of various types of testing (automated unit & application, integration, regression, test coverage, user acceptance) to identify potential defects early in the development process
- Lead supplier quality management activities. Work with the software technical interface to validate that supplier delivery and quality commitments are met
- Partner to encourage the leveraging of reusable components (e.g., code building blocks) and libraries to reduce development time and potential errors by using well tested code modules
- Partner with Agile Teams to adopt a culture of continuous improvement through iteration retrospectives and 'Inspect & Adapt' events at the end of each Planning Interval (PI). Recommended actions will be captured in the team's backlog for implementation during the next iteration or PI
- Review the results from Static Code Analysis where the code is scanned for potential issues like security vulnerabilities, coding style violations, and logic errors without executing the code. Static Code Analysis is executed within the CI/CD pipeline
- Verify that findings and defects generated by the CI/CD pipeline (functional coverage, structural coverage, cyclomatic complexity, static code analysis, multi-artifact balancing) are remediated prior to the SPE of the software products and their artifacts
Requirements:
- Bachelor's Degree: A bachelor's degree in computer science, software engineering, information technology, or a related engineering field
- Technical Foundation: A thorough understanding of the software development lifecycle and quality engineering processes
- Agile Methodologies: Knowledge of Agile methodologies and framework
- Programming Knowledge: Basic knowledge of programming languages like C#, Python, Java, or JavaScript is helpful, especially for automation testing
- Testing Methodologies: Understanding various testing methodologies (e.g., black box, white box, regression testing, and performance testing)
- Testing Tools: Knowledge of various testing tools and framework (e.g., JIRA, Jenkins, Bitbucket, Serena Dimensions, GitLab, Crucible)
- Test Case Design: Ability to create and execute test cases to identify and document bugs or problems
- Problem-solving: Ability to identify and analyze software defects
- Communication: Strong written and verbal communication skills are important for documenting issues and collaborating with development stakeholders
- Analytical Skills: Ability to analyze software requirements and identify potential issues
- Experience in the following areas: root cause & action, statistical analysis, statistical process control, sampling, and/or six sigma
- Experience with details of individual aspects of the software lifecycle (e.g. Requirements, Design, Coding, Unit Testing, Formal Testing, Integration & Testing, Release, Configuration Management, Problem Resolution)
- Experience performing data analytics (e.g., statistical analysis and/or metrics)
- Demonstrated experience effectively interfacing with senior management and experienced technical professionals
- Experience developing results of analytics into a final report or presentation
- Ability to identify, gather and analyze data to determine process health (compliance and ability to produce quality products)
- Ability to independently develop process evaluation checklists from company, program and project command media
- Ability to provide technical leadership to a group of software quality professionals in achieving the SWQE mission and objectives
- Well versed in Agile methodologies
- Well versed in AS9100/AS9115
- Certified Software Quality Engineer is a plus
- Graduate degree in Engineering is a plus
- Proficient in Microsoft Office Applications and able to quickly learn other tools and applications required to perform job duties
- Ability to prioritize and manage assigned tasks and ensure team work is completed on time
- Excellent interpersonal skills needed for collaboration, communication, and presentations as well as resolving issues with multiple organizations
- Ability to independently coordinate a diverse team in identifying root causes and resolution of complex issues