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.