Quality Department SET Career Framework: Staff

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

Quality Department Competencies: Staff


Engineering Framework | Quality Framework


Staff at GitLab are expected to exhibit the following competencies:


Staff Leadership Competencies

Engineering

A staff engineer generally operates at a team level scope, serving as the technical leader for one or more of their team’s domains of responsibility.

  • Helps others across the organization understand their team’s domain and technology.
  • Communicates clearly and effectively with team members and stable counterparts.
  • Makes responsible decisions and evaluates tradeoffs impacting their team’s domain.
  • Exhibits a deep understanding of their team’s features, how customers use them, and how they fit into the larger business.
  • Improves team processes.
  • Recognizes good solutions and clearly explains their merits to relevant stakeholders.
  • Unblocks and enables team members and counterparts.
  • Participates in processes which address complex technical challenges, such as the Architecture Design Process, as a DRI.

Staff Technical Competencies

Quality
  • Test Strategy (Quad Planning) & Test Coverage
    • Own quad planning efforts and proactively optimize test coverage.
    • Coach other SETs and fellow counterpart team members on effective testing strategies and implementation of test automation for new features.
    • Proactively manage the competing priorities and potential collisions of concurrent projects to reduce risk, increase test coverage, and leverage efficiency gains in overlapping testing activities.
    • Identify and design potential new testing practices/tools/frameworks, demonstrate their value, and implement in collaboration with other Software Engineers in Test.
    • Provide risk analysis and input on test strategy, refine tests at all levels to ensure efficient coverage and effective deduplication, and steer the team to optimal test coverage.
  • Test Stability & Triage
    • Proactively manage 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. Help debug failures to unblock the current on-call engineers.
    • Work with Infrastructure and the counterpart stage to address test failures related to test environments or bugs in code.
    • Proactively identify and implement improvements to our process and test architecture to improve stability and reduce flakiness.
  • Test Tooling
    • Lead test automation infrastructure implementation across multiple product areas in collaboration with stage group, functional area counterparts and Quality Department team members.
    • Work across departments to identify, plan, and execute improvements/refinements.
    • Keep up-to-date on industry developments and conduct spikes/Proofs-of-Concept on potential improvements or new tooling.
  • Test Environments
    • Setup and maintain new GitLab test environments for your stable counterpart group.
    • Leverage provisioning technologies (e.g. Omnibus, the Orchestrator, Terraform, Ansible, Kubernetes, Helm Charts, GCP, or AWS) and work with infrastructure and distribution teams as needed.
  • Task Management & OKRs
    • Work on complex department initiatives that have an impact on the company’s bottom line.
    • Defines and delivers OKR that aligns with Company and Department initiatives.
    • Define and independently manages multiple projects within the department.
    • Able to create new methods for obtaining results.
    • Analyze engineering metrics and make suggestions to improve engineering processes and velocity.
    • Contributes to Working Groups as a Quality lead.
  • 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:
      • Participating in customer calls and taking part in Engineering outreach.
      • Hosting AMAs or office hours.
      • Speaking at conferences or meet-ups.
    • And must include activities like:
      • Mentoring Intermediate and Senior SETs.
      • Recording demos and walkthroughs.
      • Regularly authoring and reviewing new content from the department to the company blog and handbook.
  • Domain specific expertise
    • Demonstrate domain specific responsibilities within their assigned product stage.

Staff Values Alignment

GitLab

Staff Career Matrix Worksheet

Template for Staff Career Matrix Worksheet can be found here.