Shadow Program to Reduce CI Backlog
Overview
The CI team is focused on critical responses to the pipeline abuse and has been unable to make progress on the existing backlog of bugs and features, and have additionally accumulated new backlog items to be addressed. Groups and Stages across Ops are also working on mission-critical objectives to increase future revenue, however, these projects don’t currently bring in the same revenue or user impact as CI.
Exposure to a broad range of Gitlab tools is beneficial to engineers. They gain insight into new areas of the codebase, get the opportunity to work with new people and have a better understanding of potential issues when reviewing MRs. Ensuring the volunteer experience is positive by organizing work and refining it in advance will be a major factor in the ongoing success of this objective.
Goals
- Identify milestone length project plans to address subsets of issues from the CI backlog.
- Develop a regular rotation of engineers from Release, Configure and Monitor teams to complete a one month long project.
Proposal
Establish a formalized CI Shadow Program where volunteers from non-CI groups join the CI team to help lower the burden on the CI development group. Volunteer engineers can commit their time to one milestone.
Roles and responsibilities
- CI Leadership (EMs/PMs) - Maintain a prioritized list of issues for external contribution.
- CI EMs - Develop well-defined, actionable project plans before engineering begins.
- Contributing EMs - Identify a volunteer engineer from your team prior to the start of the milestone. Plan capacity for the volunteer to be largely unavailable for non-CI work throughout the milestone.
- CI Group - Establish a weekly office hours session to provide assistance to external engineers working on CI issues.
- Volunteer engineers - Begin technical breakdown and requirements validation. Join CI team Slack channels and consider attending CI office hours for a couple weeks before the milestone begins to get familiar with the issues. Any CI pairing sessions should be recorded and documented to make onboarding for future rotations more efficient.
Other Options
- Engineers may be more productive working together with people and processes they are already familiar with. If it’s more efficient, an entire team may want to volunteer together for a milestone, or half of a milestone.
- Consider bonuses or other incentives for engineers who volunteer for this effort.
This is a draft proposal. Please comment with your thoughts!
@dcroft @darbyfrey @sgoldstein @cheryl.li @samdbeckham @jreporter @kencjohnston