How We Work
This page describes the tasks and duties of members of the Cloud Platform (CP) team, and explains some of our working practices.
If you need help at any point, don’t hesitate to ask the team. Among other things, you can:
- Post in #cloud-platform explaining the problem
- Post in #cloud-platform to ask for someone to pair-program with you
- Mention the issue during the daily standup
The Board / Tickets
We use a kanban process to manage our backlog of work on this zenhub board, which aggregates GitHub Issues from the various CP team repositories.
We work in two-week sprints, and the process of getting work done should look like this:
- Assign the topmost ticket (i.e. github issue) of the “This Sprint” column to yourself, and move it to the “In Progress” column
- Let the team know what you’re working on by posting in the
- Create a new branch in each affected github repository and make whatever changes are necessary
- Raise a pull request (PR), and get at least one other CP team member to review your changes (two reviews are required for infrastructure PRs).
- After your PR has been approved, merge it and, if necessary, apply your changes using terraform or whatever else is required to apply your change to our infrastructure
- Close the github issue, and move on to the next ticket
Anyone in the team is encouraged to add new tickets at any time. So if you think of something we ought to do, please raise a ticket for it.
Making changes to code
Please read these technical guidelines for how we prefer to work on code.
- Whoever raises a PR is responsible for getting someone to review it, and for merging it after it has been approved
- Please be pro-active about reviewing other team members’ PRs
- When reviewing a PR, please add a “reaction” emoji to the corresponding slack message, so that other team members know you’re doing so. This avoids duplicated effort. We tend to use 👀 to show we’re reviewing a PR, and/or ✔ when we’ve approved it.
The 🔨 Hammer of Justice
The origin of the name is lost, but it sounds a lot more fun than “support manager” 😏
We designate one member of the team to be the Hammer on each working day. Please volunteer when you feel comfortable, so that we all take a turn.
The Hammer is responsible for:
- Ensuring questions/problems in the
#ask-cloud-platformslack channel are being worked on, and that users receive frequent updates until a problem is resolved
- Ensuring that users’ PRs raised against the environments repository are reviewed in a timely fashion
- Ensuring that Cloud Platform team members’ PRs are reviewed in a timely fashion
It is not the Hammer’s job to answer every query in the channel, and review every PR
It is the Hammer’s job to ensure that all queries are handled, and that PRs are reviewed. This may involve asking other team members for help with particular queries where they have relevant expertise, or if there are more queries coming in than you can handle.
Anyone can (and should) respond to queries in
#ask-cloud-platform, and review PRs. You don’t have to be the Hammer to help.
Working on tickets in the backlog when you’re the Hammer is not advised. The constant context switching makes it hard to get significant work done, and there is also the risk that questions go unanswered and PRs get blocked waiting for review because you’re head down in a problem and don’t notice them.
Instead, when not answering queries and reviewing PRs, the Hammer should work on fixing “squeaky wheels” - the minor alerts and problems that crop up which don’t necessarily result in backlog tickets, or where such tickets never become high-priority enough to get selected during sprint planning.
“Squeaky wheels” could include things like:
- Todo items reported by How out of date are we?
- Intermittent alerts in the
- Improving our integration tests
It is important to keep all of this up to date as the underlying code changes, so please remember to factor this in when estimating and working on tickets.
This page hosts a list of documents which are overdue for review. Please feel free to review any of the documents listed, and raise a PR making any updates (including updating the