

Ask HN: How do we measure development productivity - josh33

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.<p>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.<p>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.<p>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).
======
run4yourlives
_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".

~~~
josh33
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).

~~~
run4yourlives
_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.

