metrics for team contributions
The best goals have metrics associated to them, one method of setting goals is to make them SMART.
T of smart can be hard to quantify without overly intrusive metrics recording. Often
time-recording is very poorly implemented and in SRE terms this “overhead”…
Administrative work not tied directly to running a service. Examples include hiring, HR paperwork, team/company meetings, bug queue hygiene, snippets, peer reviews and self-assessments, and training courses.
… can lead engineers to resent the metrics and the goals.
In an ideal world, the metrics that we use for measurable and timebound would be outputs of the existing tooling that our teams use. For example; team velocity reporting as view over the ticket tracking system.
Many engineering teams use github, so can we exploit it’s search syntax to get the stats for SMART goals?
We will focus purely on the “pull-request and issues” search syntax.
In the following sections I will use placeholders such as
<username> to indicate where your info
should be inserted.
All the PRs
involves shows all the PRs that have the target username as an
(all of which are supported search keys).
This will give us stats about the impact of a user.
This checks off the measurable target, but what about timebound?
We can also combine other search terms to get a feel for how work is progressing:
|understand proportion of PRs that get merged|
|PRs opened by specific username|
There are loads more than can be combined to surface the stats that might contribute towards the SMART goal.
Whenever we introduce a metric, it can be easy to optimise for that. There’s no guarantee here that any of the involvement of a given user is of quality, but we get some of the way to understanding the impact someone has in an organisation. This is a pure quantitive metric, with no qualative reporting.