All GitLab data team members can, and are encouraged to, perform code review on merge requests of colleagues and community contributors. If you want to review merge requests, you can wait until someone assigns you one, but you are also more than welcome to browse the list of open merge requests and leave any feedback or questions you may have.
Note that while all team members can review all merge requests, the ability to accept merge requests is restricted to codeowners.
The responsibility of a reviewer is
Code ownership is a feature of GitLab that links a project member to specific folders and files in a project. It is meant to answer the questions "who can I ask about this code?" and "who should review changes to this code?". The goal is to assign 2 or 3 GitLab Team Members (max 4) to a set of folders and files (if possible). With not assigning a big group of people to basically all of our code, we hope to define better ownership and drive better code reviews.
A code owner:
Requirements that should be taken into consideration to become a codeowner:
A maintainer in any of the data team projects is not synonymous with any job title. Here, the data team takes from the precedent set forward by the engineering division on the responsibilities of a maintainer. Every data team project has at least one maintainer, but most have multiple, and some projects (like Analytics) have separate maintainers for dbt and orchestration.
The responsibility of a Maintainer is to ensure that
We have guidelines for maintainership, but no concrete rules. Maintainers should have an advanced understanding of the GitLab Data projects codebases. Prior to applying for maintainership of a project, a person should gain a good feel for the codebase, expertise in one or more domains, and deep understanding of our coding standards. You're probably ready to become a maintainer when both of these statements feel true:
If those subjective requirements are satisfied, this is the process to add yourself as a maintainer:
Every MR follows the applicable MR template. When a MR is ready for review, assign a code owner for review. When a code owner approves the MR, the MR can be merged by a maintainer. This could be the same person if the code owner is also a maintainer. If not, a maintainer is tagged in the MR, asking for final review and merge.