How would you measure a developer’s performance? Definitely not with story points for sure. For anyone who’s been programming for a few years, it would be fairly easy for them to come to the conclusion that the story points they collect after finishing each task do not reflect their performance and productivity. I mean, there are worse methods than that. Like measuring with the lines of code a developer wrote or the number of commits they pushed. Like any other thing’s that built on good wish and delusion, this also fails to meet it’s original intent.

For this method to work correctly and give fair results, we’d have to assume that:

  • Each task is worth at least some points
  • Each task will be developed, reviewed, tested, and released by the time the current evaluation period ends
  • Developers will not jump on relatively easy tasks to collect points
  • We definitely have a good way of knowing the actual worth of task X in points

Many tasks will overlap sprints. Many tasks will not be resolved because of some blockers even though an effort has been made maybe to debug and analyze a problem. Not every task is worth “points”.

I guess it isn’t that difficult to see how this method doesn’t take into account the nature of human and the way we develop software. Instead of giving a good and fair metric on the productivity of the developer, it makes way for even worse outcomes. Developers unhappy with the way they are evaluated. A team of developers evaluated with false metrics. A team of developers focusing on collecting points instead of taking on tasks that would improve code quality and critical (and difficult) business issues that would otherwise take longer to finish.

I don’t know the origin of this method, but it seems to me that a bunch of managers thought its easier to just assign each task a point, and the at the end of the month just look at a chart where each employee have their “productivity” points sum next to their name. Now you know how much productive each developer is. It’s a piece of cake.

I also don’t know the perfect way of measuring developer productivity, but I sure as hell know from experience its not by story points. Perhaps when a company gets too big it feels better and easier to kind of automate this process, which I think is not necessary if you have confidence in the way you hire people. But any manager or team leader would have a better way of knowing the performance of a team and its individuals by the outputs regarding their domain in which they work. I believe each person deserves a close attention when it comes to knowing their performance, and this job falls on the back of whoever manages them.