Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: How do we measure development productivity
3 points by josh33 on Sept 7, 2010 | hide | past | favorite | 3 comments
I work for a company where 99% of our products are coded in our India office. We have many teams with different areas of expertise.

We have great developers, and the ones that aren't great often leave of their own accord because they don't have the necessary skill/aptitude to grasp our business and code base.

That being said, we have a difficult time measuring productivity. Jim Collins says we need to get the right people on the bus and the wrong people off (Good to Great). I feel like we've got the right people on the bus for the most part, but each coding task that we give is so different that we're struggling to use metrics to assess productivity.

We've discussed having project managers assign arbitrary point values to each task, but we worry some developers might just game that system. How have you overcome this (we have 70 developers and will probably have 100 by the end of the year).



I work for a company where 99% of our products are coded in our India office.

First, are you working out of that office as well? If not, how can you accurately be assigned the task of figuring out which of these people are great and which suck? You wouldn't know them from Adam.

Second, define "productivity".


I go over every 6 months and spend 3 weeks with my developers. It's less than ideal but it has worked for us so far (I think we recognize that productivity won't be optimal because of the distance, but we're careful with hiring to get good people).

To compensate for the lack of face time, we use GoToMeeting nightly to meet with whole teams or team members and to clarify questions. Each team there has a team lead who we want to involve in this measurement process, although we're still debating how best to do this (hence my post).

That leads me to define productivity -> we want our developers improving over time, getting more complex tasks done in less time as they progress. We're concerned that we're experiencing a plateau in productivity, but we're not sure (also leading me to post here).


I go over every 6 months and spend 3 weeks with my developers.

In what other situation has this level of contracted, limited involvement actually worked? Generals with Soldiers? Coaches with Players? Parents with Kids? Teachers with Students?

If you can find a single like relationship that is similar and has worked demonstrably, please raise it. Until then, I'd ask what is so special about your situation that would mean that it isn't the expected norm...

It's less than ideal but it has worked for us so far

Except that you are stating here that you are unable to measure which programmers are more effective than others. That doesn't seem like it's working to me.

Most managers, myself included, can tell you immediately by name who their best programmers are. When you see them day in and day out there is no way you can't do this. It's human nature.

You're asking for a methodology, but the solution isn't your lack of one, it's your lack of involvement. It is either for you to get more involved, or to relinquish this particular task to the person who is in a better position to make the call. If that person is in place and cannot make the call, you've got an issue with their performance, not your team's.

Good luck.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: