Who are your organization’s GitHub Champions?

What we learned from collecting individual contribution metrics in our GitHub repositories.

Content

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.

Working late into the night

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?

The organization-wide top 3 for the first two weeks of February
  1. Marek, Apify’s CTO, did a LOT of code reviews (81).
  2. Jarda (gippy) did a lot of everything (40 PR reviews; 8 issues closed; 11 PRs).
  3. depend-a-bot gave Andrey a good run for his money in maintaining the Apify SDK.
Preview of a json data.
Depend-a-bot takes first place in contributions to 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.

Every now and then, a quieter member of the team makes an appearance in the top 3.

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.

One week in Apify engineering
See a Financial Controller turned Engineer describe her week.
Read on the everyday work and play of our engineers. 

P.S. For that upcoming promotion assessment or contract renewal, bring your GitHub Champion bragging rights to the negotiation table 😉

Mihails Murasovs
Mihails Murasovs
Technical writer and frontend developer. JavaScript/React warlock, maintainer of Apify Docs, and promotional video persona.

Get started now

Step up your web scraping and automation