Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

My company is going to hire an external developer to write some simple PHP modules and some minor bugfixing in our software.

We have never hired an external developer by the hour before. How can we measure external developer's productivity and coordinate with them?

I thought about using a combination of http://worksnaps.net/ and https://github.com/.

Any better ideas?

share|improve this question

migrated from stackoverflow.com Nov 5 '11 at 13:24

This question came from our site for professional and enthusiast programmers.

5  
Don't do this: thedailywtf.com/Articles/Productivity-20.aspx any metric that can be gamed, will be. –  IronMensan Oct 28 '11 at 11:39
1  
luckily we dont want an absolute measure to confront different developers, we will do this by ourselves. We just want to be sure that there is a correlation between hours paid and work done. –  Mascarpone Oct 28 '11 at 11:42
add comment

3 Answers

You should measure the developer's productivity by how well they solve your problems.

  1. Ask the developer to give an estimate for how long a new feature or bug fix will take.
  2. Ask yourself whether it's worth having them fix it based on their estimate.
  3. If it's worth it, and they finish in more or less the time that they estimated, they were productive.

Unforeseen problems can (will) arise, in which case they should revise their estimate and you should go back to step 2. If the estimates are regularly wrong to an extent that total cost is more than the fix is worth, stop working with them.

share|improve this answer
    
and which tool would you use to track the development? –  Mascarpone Oct 31 '11 at 23:29
1  
I've used JIRA and been happy with it, but this should be a separate question (and has probably already been answered). –  blahdiblah Nov 1 '11 at 0:30
2  
as someone who has worked this way before, this is the only way to go. make sure they use a source control system that you can access (e.g. github as indicated). However do not rely on tools alone there is nothing like personal contact to engender trust on both sides. Use agile/scrum and ask the 3 questions on a daily meeting (5mins if that is all needed) what did they do yesterday, what do they plan on doing today and are there any issues that you need to be amde aware of and can you do something to help. –  Shaun Wilde Nov 3 '11 at 21:19
add comment

You could check the progress of the projects directly via dropbox, at my work place, we tend to work on projects using Netbeans IDE, that we have linked to our dropbox accounts which means we can all see exactly what is being worked on at that point and see the actual files.

This may not be what you need but I think it would provide a good solution for you.

http://www.dropbox.com/

share|improve this answer
7  
Have you ever heard of the version control systems? –  SK-logic Oct 28 '11 at 13:27
add comment

Measuring programmers is a stupid idea, but there're lot of checkpoints, which can be used as indicator. These indicators requires programming experience, e.g. if you wanna know that a solution is a long-term safe solution or just a quick hack, you should peek inside the code.

Fortunatelly, there's a sharp line between amateur and professional programmers, which can be judged by non-programmers (also, it requires some technical knowledge): the documentation. Amateurs don't make documentation, professionals do. The quality of the document may vary, but if there's no any, it's the sign of amateurism.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.