We have been struggling to benchmark our performance compared to other companies and looking to run an internal project to measure our development velocity.
Community members - how do you measure development velocity and improve developers throughput ?
Any tools you use, specific methodology or engineering team structure or an incentivized structure for developers.
That’s a pretty deep question. I don’t know if there’s really one generic answer for this, but I am sure there are a million articles on medium with opinions. but there definitely can be solutions to your scenario.
Maybe you can share some insights on what your team composition looks like, technology stack, how they are spending their time today, what pains have the expressed to you, what your sprint cycles look like, etc.
Truthfully, the best way is to ask the engineers and brainstorm with them!
Increasing throughput is not always relative to keeping quality. Example: If you integrate a CI/CD and write test cases… you’ll ship less features but also ship less bugs. Without writing tests you’ll iterate faster, ship more features, but spend more time fixing your issues in the long run… Obviously its about weighing the tradeoffs.
Hmm… I am not sure I have advice for that. I don’t think a single tool can measure developer productivity… tons of factors come into play.
I’d maybe recommend by just evaluating the entire sprint estimation process, and whether those milestones get hit. Start asking for feedback from engineers about what the biggest pain points are. Understand where they spend the most time. Review the pr’s on a daily basis. Get involved and really really understand what happens on a day-to-day basis.
I would though suggest to look at the following resources to learn more engineering output
I recently read this book that touches on this topic. It was a good read: https://www.amazon.com/Elegant-Puzzle-Systems-Engineering-Management/dp/1732265186
Essentially the thinking is to approach it using systems thinking and split it out to multiple stages (e.g. code → PR → Review → Deployment) and figure out which parts of this cycle you have to improve on by tracking metrics on each part of your development cycle.