Quality Department SET Career Framework: Senior

These are the expected competencies of a Senior Software Engineer in Test (SET) at GitLab.

Quality Department Competencies: Senior


Engineering Framework | Quality Framework


Seniors at GitLab are expected to exhibit the following competencies:


Senior Leadership Competencies

Engineering
  • Communicates clearly and effectively, both written and verbally, when advising, setting expectations, or suggesting improvements. This applies whether interacting with team members, customers, or the wider community.
  • Able to deliver work, even when given unclear requirements, within the context of their team.
  • Demonstrates knowledge about how their group and stage fit into the larger business.
  • Able to suggest alternative solutions to customer problems based on what they know about other areas of GitLab.
  • Looks for opportunities for process improvements within their team and works with others to implement process changes.

Senior Technical Competencies

Quality
  • Quad Planning & Test Coverage
    • Lead Quad planning efforts and optimize test coverage.
    • Create test strategy and implement test automation for new features.
    • Provide risk analysis and input on test strategy.
    • Identify and communicate must-have test coverage for critical functionality.
    • Refine tests at all levels to ensure efficient coverage and effective deduplication.
    • Steer the team to optimal test coverage by identifying gaps in functional and non-functional test automation, documenting missing coverage, and adding new test automation to improve coverage.
  • Test Stability & Triage
    • Lead triage and test pipeline stabilization activities.
    • Participate in test pipeline on-call rotation and ensure that pipeline failures are triaged, addressed and communicated in a timely manner.
    • Take ownership of unquarantining flaky tests.
    • Work with Infrastructure and the counterpart group to address test failures related to test environments or bugs in code.
    • Identify and implement improvements to the process to make it more efficient.
  • Test Tooling
    • Lead test stability resolution efforts for tests in production and non-production environments.
    • Lead and implement new test infrastructure tooling.
    • Optimize test pipelines to reduce feedback cycle.
    • Take initiative to recommend new approaches and processes that will improve our quality, productivity, and velocity.
    • Create and refine deploy processes, deployment scripts, and build pipelines.
  • Test Environments
    • Grow your knowledge of GitLab provisioning and setup tools. Examples include Omnibus, the Orchestrator, Terraform, Ansible, Kubernetes, Helm Charts, GCP, or AWS.
    • Maintain or set up new GitLab test environments for your stable counterpart group in collaboration with other Software Engineers in Test.
  • Task Management & OKRs
    • Owns KRs within team OKRs.
    • Establish due dates and approach for completing assignments; demonstrates project management skills as part of a larger team.
    • Exercises judgment and independently identifies the next steps.
    • Works closely with counterparts to anticipate, understand, and plan for upcoming work and roadblocks.
    • Contributes to progress of working group exit criteria.
  • Knowledge Sharing
    • Clearly document, review, and broadly share our process and knowledge. This could be across mediums (recorded videos, written artifacts) and may include activities like:
      • Contributing to external content like GitLab blogs on interesting problems solved.
      • Recording demos and walk-throughs.
      • Mentoring other engineers.
  • Domain specific expertise
    • Demonstrate domain specific responsibilities within their assigned product group.

Senior Values Alignment

GitLab

Senior Career Matrix Worksheet

Template for Senior Career Matrix Worksheet can be found here.