What do I do if my pickup time is high?
- How to Identify High Pickup Time
- Causes of High Pickup Time
- Ways To Reduce Pickup Time
It's integral to a continuously developing team to be reviewing code as close to real-time as possible. Code reviews should be picked up within 24 hours of a being submitted at minimum. Ideally a review should not be left hanging for over 48 hours. See our industry benchmarks here: Metrics Community Benchmarks
If you pickup time is high, your main dashboard will display coding-time as red.
How to Identify High Pickup Time
See all current hanging requests
Click on the Activity tab > sort by Pull Requests > select Pull Requests Hanging. From here you can see a list of all PRs currently unreviewed for over 3 days. To see hanging reviews that are only 1 or 2 days old, click on Additional Filters > Event Dates > update the Updated Date.
Check for team pickup delays
Identify delays in a team's coding from the People tab, select the Teams tab, and hover over the cycle time metrics.
Click into the team itself, hover over cycle time again to identify team members who are not getting their reviews picked up.
Causes of High Pickup 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 timely. Breaking tasks into shorter and quicker iterations will increase cycle time across the board, including pickup time.
Ways To Reduce Pickup 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 review requests hanging
Slack alerts for hanging PRs can notify the team in real-time when a request has been hanging 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 hanging PRs and can click into the PR directly from Slack
You should also turn on the Merged without review alert. The last thing you want is unreviewed code being merged due to lack of PR pickup.
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 hanging PRs
- 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.