As a developer, I was sometimes frustrated how long it took to get my code reviewed. Our workflow at the time was to request a review from a specific developer or let the round robin assignment pick one.
What I noticed though, is that other devs are usually not immediately free to pick up your code review. Meetings, lunch, deep into work, it goes on. But since they're the one assigned to the review, your PR is just going to sit there until that person can take a look.
The switch up I introduced (and built this app for) is to instead have more of a "pull" philosophy with reviews. Instead of one person being the bottleneck, the PR is shared with the broader team and the first available dev can pick it up. We started doing this manually just in Slack, but it really worked well for us! PR review time was quickly halved and it soon caught on in the rest of the org. So I build a basic slack app that helped streamline this. Over the years, I've automated it more and more and added other features that helped speed up our review workflow. We now target an average time to first review of one hour and we're pretty good at achieving that most of the time.
Recently, I've put some effort into making it available for others to try too. I've had some people ask me about using this at their workplace so it's now publicly accessible for anyone to install. So I thought I'd share here too to see if others could find it helpful as well and have more ideas for it.
As a developer, I was sometimes frustrated how long it took to get my code reviewed. Our workflow at the time was to request a review from a specific developer or let the round robin assignment pick one.
What I noticed though, is that other devs are usually not immediately free to pick up your code review. Meetings, lunch, deep into work, it goes on. But since they're the one assigned to the review, your PR is just going to sit there until that person can take a look.
The switch up I introduced (and built this app for) is to instead have more of a "pull" philosophy with reviews. Instead of one person being the bottleneck, the PR is shared with the broader team and the first available dev can pick it up. We started doing this manually just in Slack, but it really worked well for us! PR review time was quickly halved and it soon caught on in the rest of the org. So I build a basic slack app that helped streamline this. Over the years, I've automated it more and more and added other features that helped speed up our review workflow. We now target an average time to first review of one hour and we're pretty good at achieving that most of the time.
Recently, I've put some effort into making it available for others to try too. I've had some people ask me about using this at their workplace so it's now publicly accessible for anyone to install. So I thought I'd share here too to see if others could find it helpful as well and have more ideas for it.
I'd love to hear your thoughts!
We are using GitHub codeowners groups and require one of the group to confirm. Works ok'ish for that "one of N" aspect.