DEV Community

heyimsunflower
heyimsunflower

Posted on

I got tired of waiting for my teammates to review my code, so I created a bot that helps

Hi all, I'm a software developer and in every team that I've been at, code reviews were a major bottleneck.

This bottleneck causes practical problems for our team:

  • It takes a lot of manual coordination and effort for me, as a dev, to get my PR reviewed and merged.

  • Code left unmerged often blocks progress on other tasks, and continues to demand attention from me for a longer time (which reduces my ability to perform other tasks).

  • In general, longer PRs == less output (more time for our code to reach customers)

I identified three major issues that cause this problem:

Devs usually have to manually coordinate the review with the reviewers ("Hey, I've replied to you on Github, can you take a look?" - stuff like that). These discussions occur on multiple chats (team channels, DMs) and different platforms (Slack, Github), and require significant manual coordination and attention from the dev.

Code frequently becomes unmergeable or requires attention, and it's hard to stay on top of all open PRs and perform needed actions on time (rebasing if conflicts arise, re-running CI fails, replying to an open discussion as a reviewer)

PRs are often undocumented, and it's tough to "reverse-engineer" a PR to understand what it does - especially if your team owns multiple domains.

To overcome that, I created a bot that integrates with Github and Slack and more efficiently structures your code review workflow.

The bot opens a Slack channel (and invites all reviewers) for every new PR. This way, reviewers collaborate on one space and are automatically updated (no need to coordinate manually!).

It also sends real-time notifications whenever your code needs attention. This helps you keep your code reviewable and mergeable at all times.

To reduce PR pickup time, the bot sends a daily report on all open PRs to keep everyone in sync. The report contains all needed information on each PR - increasing transparency and accountability between team members (everyone knows what they need to do to keep the team unblocked).

Curious to hear what you think! Is this an issue you've encountered as well?

Top comments (0)