Case Study: How a FinTech Company Improves Code Review Process
We’ve got pretty good with our Pull Request and Code Review process, but initially, our PRs were complex, not very well documented, and difficult to read. The Resolution Time Distribution graph shows how better we are getting at this, being able to merge PRs much quicker than before.
Pablo Reyes, VP Engineering at Strands
Strands is one of our customers that has been using Awesome Graphs for Bitbucket for a couple of years so far. Since 2004, Strands has been developing highly customizable digital money management software for top-tier financial institutions worldwide. Our team is happy to help them reach their goals and improve their development processes with the statistics visualizations we provide.
Pablo Reyes, VP Engineering at Strands, agreed to share how their team uses our solution and provided us with a picture of how they:
- identified bottlenecks in code review
- tracked if this process was improving with the changes they implemented
- increased developers’ motivation watching the trends in individual performance.
Code review process improvement
In fact, they’ve got pretty good with their Code Review process so far. But initially, the PRs were complex, not very well documented, and difficult to read. The Resolution Time Distribution report shows how better they are getting at this, merging PRs much quicker than before.
Since they do a lot of code reviews at Strands, it’s always nice to see who and what teams are making the best use of it. It’s encouraging for the team to see the progress with these reviews, and the Pull Requests reports give them the perfect overview of these improvements.
A couple of years ago, they started improving their methodology. For example, introduced the practice of approving PRs by at least three people. Moreover, they also encouraged developers to leave lots of comments and suggestions and not approve a PR until it’s good enough.
PRs are resolved faster now because they are done better, and the quality of suggested things improves all the time. As a result, it’s nice to see how senior developers make sure everything is done according to coding guidelines. Overview of how things are going and if it improves or not is presented in the Contributions report.
At Strands, managers don’t use Awesome Graphs to control the number of commits per developer, but they find it useful to look at the dynamics of the overall activity to capture the trends. For example, if there’s a significant drop, the developer is probably stuck at some difficult tasks or disturbed by various activities, helping other teams or communicating with customers.
Most things are caught soon in the day-to-day communication and work, but mid-term changes in the trend (either a decrease or increase) give them a hint of something they may need to look at. This has been visible when people change projects or teams.
The Developer’s Contributions graph gives a clear view of this kind of drops and rises, and it’s handy to compare two periods before and after certain changes were implemented.
Any trend is a good point to discuss and find if there’re any bottlenecks or places to be improved with the processes in a team. Performance is a complex measure and depends on lots of different things, some quantitative and some qualitative, but the aggregation of code contributions (comments, pull requests, tasks solved, commits, etc) gives some good indicators on how a team is evolving with time.
Along with the others, the Contributors graph provides this kind of insight into the dynamics of code contributions by different teams.
Try the best teams’ practices for your company
Awesome Graphs for Bitbucket has become a useful tool for Strands on their way of identifying where the problematic places are, and tracking if the implemented changes improve the situation or not. Besides, it appeared to be a handy instrument for regular monitoring.
Try Awesome Graphs for Bitbucket for free and check if it can help you as well.
Read more case studies to see how our customers benefit from using Awesome Graphs for Bitbucket in their work: