Axim Engineering On-Call
Quick Facts:
2 week sprint-aligned rotation within standard business hours.
@openedx/axim-oncall
is the GitHub group.Playbooks are here: On-call Playbooks
List of open GH requests are here: https://github.com/openedx/tcril-engineering/issues?q=is%3Aissue+is%3Aopen+label%3Agithub-request
Ask for help if you need it!
Contents
Schedule
On-Call Order
For exact dates, see the “Axim On-Call” Google calendar (Axim-internal).
(New Axim employees, you’ll need access to that calendar if you don’t have it already)
@Feanil Patel
@Kyle McCormick
@Brian Smith
@Brian Mesick
@Adolfo Brandes
@Dave Ormsbee (Axim)
@Edward Zarecor
@Sarina Canelake
Past On-Calls
Details
What is axim-oncall?
A lightweight rotation of Axim engineers, ensuring that someone is always responsible for responding to administrative requests from the community.
What isn’t axim-oncall?
Something that should be done outside of normal working hours.
Something that should affect weekends, holidays, or PTO.
Pager duty.
A designation that you need to handle ALL incoming community requests yourself.
What are the responsibilities?
Respond to GitHub Requests within one business day.
Requests should automatically ping the
@openedx/axim-oncall
GitHub group.Assign yourself to the issue.
If you can’t resolve the request within a day, that is fine. Just give an “Ack” and a general timeline estimate.
Please note that users must also be added to the CLA check database. The specifics are documented here.
By the end of the sprint, ensure each GitHub Request is either:
closed, or
explicitly reviewed & handed off to the next on-call engineer at the beginning of the following sprint.
Respond to other pings to the
@openedx/axim-oncall
group if they happen.Keep an eye on the
#ask-axim
Slack channel. If Axim-oriented questions come up that nobody is responding to, bring them up in daily standup so we don’t forget about them.
How do I handle requests?
All our on-call processes are documented here: On-call Playbooks
If new things come up or if processes change, update that document!
The best way to see all open requests is by going to the
axim-engineering
repo’s issues and filtering forgithub-request
: https://github.com/openedx/tcril-engineering/issues?q=is%3Aissue+is%3Aopen+label%3Agithub-requestIf you are swamped during the sprint, delegate to other team members. You don’t need to do all the work yourself.
How does the rotation work?
Rotation order is defined at the top of this page.
At the semi-weekly Planning Meeting, the on-call engineer switches to the next person in the order. Switching process:
Update the @openedx/axim-oncall GitHub group.
The on-call engineer should audit their personal list of assigned issues. For issues that are related to on-call, the engineer can decide to “keep” the issue or “hand off” the issue to the next on-call engineer.
Make sure to update the assignee when handing off an issue.
If the on-call engineer is on PTO during their turn in the rotation, they should trade days with another engineer or trade the entire sprint. Don’t do on-call from vacation
Anything else to know?
Record any access changes or decisions you make in GitHub issues. This will help us keep track of what changes we make and why.
To be on the rotation, you will need admin (“owner”) rights on the openedx GitHub organization, which will confer you admin-level rights to all repositories in the organization. Be judicious with these. In the majority of cases we should be abiding by all normal branch protection rules.
Appropriate uses of admin rights include:
Handling Axim GitHub Requests.
Fixing minutiae like out-of-date documentation links or typos in repository descriptions.
Merging without review or CI validation in order to fix CI itself or update repository metadata (openedx.yml).
Inappropriate uses include:
Merging app code without appropriate review and CI validation.
Adding or removing access rights when there is no corresponding Axim GitHub Request.