What do I do if my review time is high?
- How to Identify High Review Time
- Causes of High Review Time
- Ways To Reduce Review Time
It's integral to a continuously developing team to be reviewing code as close to real-time as possible. Code reviews should be completed in under 2 days. See our industry benchmarks here: Metrics Community Benchmarks
If you review time is high, your main dashboard will display coding-time as red.
How to Identify High Review Time
Check the Pulse view
Long reviews can be identified in the Pulse tab, an orange alert will appear next to reviews lasting over 4 days.
See all active reviews
Click on the Activity tab > sort by Pull Requests > click on Additional Filters > click on PR State and select In Review
From here you can see all active pull requests. Filter by Updated in order to find oldest reviews.
Causes of High Review Time
The team is unaware the PR has been issued
Even the best teams have communication breakdowns. We'd recommend using LinearB's Slack alerts for hanging requests. Channels will only be notified after a PR has been hanging for over a length of time of your choosing.
Make sure to pair devs (especially new team members) with a reviewer, and encourage the team to use WorkerB Personal alerts to notify them directly when they have been assigned a review.
The team is too busy
Monitor your teams active work. Check WIP in the Pulse view, or active branches on your team dashboard. Make sure to keep assigned tasks balanced, allowing your team time to review as well as code.
The PR is too large
Similar to if the team is too busy, larger PRs may languish if reviewing them will be time consuming. Breaking tasks into shorter and quicker iterations will increase cycle time across the board, including pickup time.
Ways To Reduce Review Time
Once a cause is identified, here are some quick steps you can take in LinearB to begin monitoring and working to lower your coding time.
Set up Slack alerts for long reviews
Slack alerts long lasting reviews can notify the team in real-time when a review has been active for too long.
To enable a work at risk alert for your team. Go to Team Settings > Notifications > click Edit this under the Review request hanging notification type. Set the threshold for the alert to one day, or even a half a day. Your teams channel will be alerted of any languishing reviews and can click into the PR directly from Slack
Enable WorkerB personal Slack alerts
WorkerB personal Slack alerts send real-time direct messages when PRs are assigned to them, and when comments and requests are made on their own PRs. If you already have Slack enabled, you can invite team-members to use WorkerB by typing
/lb invite in Slack. Team members can enable WorkerB on their own using
/lb pref. You can also use the following commands to check your outstanding PRs.
/lb updatesdisplay all your pr updates
/lb reviewsdisplay all your pr reviews
/lb prsdisplay all open pull requests issued by you
Build a metrics dashboard to monitor your progress
Use LinearB's Metrics tab to build a custom dashboard to monitor your coding time. You can learn how to build a custom dashboard here: How Do I Build a Metrics Dashboard?
We'd recommend adding these Metrics to your board.
- Pickup Time
- Quickly identify trends and spikes in coding time, and use the above tips to pinpoint the issue. If you see a rise in pickup time, check the PR size and Active Branches metrics to see if your team is overloaded or not breaking down their tasks.
- PRs Merged w/o Review
- You don't want unreviewed code being merged due to lack of PR pickup.
- PR Size
- The bigger the PR, the longer it takes to review. Have your team make it easier on themselves by breaking work into manageable chunks.
- Active Branches
- Make sure your team is not overloaded and being forced to context switch and multitask. This reduces free cycles to pickup PRs.
Make a habit to check for long reviews
- Make it a weekly or even daily habit to go into the Activity tab and check for hanging PRs. Use this as a datapoint in your team meetings.
- Check your pickup time dashboard weekly to monitor improvements over sprints and iterations.