The Flutter infra team uses a ticket queue to manage operational tasks, such as:
This allows the team to separate their engineering work from “toil” work. It also lets them see which types of tasks are common and worth automating.
IMPORTANT: Whenever you have a request for the infra team, please file a ticket instead of contacting team members directly, even for seemingly trivial things or even if an individual has done the same thing for you in the past. Infra on-call will be there to handle your request, and it lets non on-call team members focus on their engineering tasks.
When in doubt, ask on the #hackers-infra
channel in Chat.
Please note that the ticket queue is meant for high priority P0 and P1 issues and should not be used to file low priority issues like feature requests or minor bugs. We have another separate weekly triage meeting that will look through ALL of the open infra issues. The ticket queue should only be used for issues that fall into the following categories, which should be very rare:
Below are instructions for infra on-call on how to process the ticket queue. It describes the processes that on-call should follow, along with useful tips and tricks. If you are on call and see a problem or omission on this page, please change it!
SLO: A ticket in the queue will be triaged within 4 business hours provided it is opened during regularly kept office hours (9 a.m. to 5 p.m. PST). Otherwise it will be triaged the following business day.
The issue priorities can be found here. Issues that are not P0 or P1 will still be seen (during the infra weekly triage meeting) but do not belong on the ticket queue.
New, un-triaged tickets will be in the New column in the ticket queue.
When a new ticket comes in, an on-call should:
This is meant to be quick and mechanical, and doesn‘t require a lot of thought. Even if you don’t have time to take any immediate action, it's helpful to keep the new column empty. Your marking it triaged also lets the ticket creator know that someone has seen it.
Once all tickets have been triaged, on-call‘s job is to service them. Apply judgement regarding which is most pressing. The order will also depend on your expertise and how much time you have. If a lower-priority ticket can be resolved in a couple minutes, don’t feel like it has to wait behind a higher-priority ticket.
From the top of the priority queue down, on-call makes sure that someone is working on each ticket. It‘s important to keep things moving if you see that they’re stuck; try CC'ing people with more information and making it clear what a given ticket is blocked on.
When servicing a ticket as an on-call, remember that it is not your responsibility to fix every ticket, only to make sure that someone is working on it. You may not be the most appropriate person to do the work, but you make sure the work gets done. This goes for new tickets as well as older tickets that someone has claimed but dropped on the floor -- some of those tickets may even have been created and assigned during the previous on-call shift, so it's important to check up on older tickets and re-assign if necessary.
On Monday during the 15-minute handoff meeting, please add comments and update the status on any tickets on which you have context, as this will help the next on-call person ramp up and understand the coming workload.