Tech teams move fast. We sprint, release, then repeat. Between the highs that come from releasing new features, which the programmers themselves rarely use, is a kind of void–it’s just work. But what about these in-between periods? Can we find a way to add meaning to the work we put in, beyond just the release?
We decided to find out.
We made a bot that collects contribution metrics from all our GitHub repositories using their API. To start, the bot needs the repository owner’s name, the time period to track, and an API token with the repo
permission (if the repos are private).
The bot grabs all your repositories, tallies up the contributions, and returns the top 3s for the whole organization and each repo. The final scores are based on issues closed (1 point), pull request (PR) reviews (0.75 points), and PRs opened (0.5 points). As a bonus for the metrics-hungry, it also returns a breakdown of all the contributions in each repository, ready to be transferred into charts.
What did we learn about the first two weeks of February from Apify’s engineering teams?
- Marek, Apify’s CTO, did a LOT of code reviews (81).
- Jarda (gippy) did a lot of everything (40 PR reviews; 8 issues closed; 11 PRs).
depend-a-bot
gave Andrey a good run for his money in maintaining the Apify SDK.
We haven’t had many major feature releases since we launched our new billing system at the end of 2020. So, while we work toward that “fresh release” high again, there aren’t too many events to celebrate. This is where a bit of GitHub (non)competition comes in.
At the sprint retrospective, we’re now able to quantify some of the work that goes into the product even during the “quiet” periods. By showing these numbers and making them explicit, we add a sense of scale to what we’ve been doing.
Looking into each repository’s top 3s, we find members of other teams, the ones who you never know what they’re up to, making an appearance. So, we get a chance to celebrate their contributions, too.
Sure, programming isn’t about competition or racking up more PR reviews than everyone else. And metrics never reflect the full reality. But beyond the big releases, it can sometimes be hard to remember what you did last week or even two days ago. Now, when we look at it in retrospect, at least we have some stats to remind us of the work we put in.
In a remote working environment, it might be a nice ritual at your team’s retrospective to crown the latest champion and celebrate the quiet workhorses who may not always get the credit they deserve. It’s not about being the best, it’s about recognizing how much you do and celebrating your team.
P.S. For that upcoming promotion assessment or contract renewal, bring your GitHub Champion bragging rights to the negotiation table 😉