Even the area of applications they work in will make comparing production to other team members almost impossible.
Developers can knock over 20 bugs and add 3 new functions in a one day but spend the next week trying to resolve a single bug. Performance against sheer production is just not an option.
Managers need to look at other options.
To properly evaluate, managers must be able to repeat the same evaluation 6 months later and compare the two to see if the individual is performing better than he/she was in the first evaluation, so the evaluation must be against something that is quantifiable, repeatable, comparable, and understandable.
Luckily there are things that you can use other than functions vs bugs. You can evaluate items like:
- Standard of dress (programmers turn up in tee shirts - but are they clean and non offensive).
- Attendance to work during required times and hours. This will include calling in if late for any reason.
- Attendance to meetings
- Quality of documentation and testing
- Time to respond to a request
- Ability to get along with the others in a pleasant and non-disruptive way
- Ability and willingness to help out others with mentoring. Includes things like contributing at meetings. Must be weighed up with doing their own work.
- Following the correct process
- If customer interaction is involved, how many complaints and compliments.
- Desk tidiness (mine is terrible so I have to make a real effort to tidy it every couple of days).
- Willingness to take on new work.
- General attitude
- Attitude to change
- Clarity and effectiveness of documentation
Try marking these out of 5 (5 being the best). Try to keep them all around 3 so that areas of discussion and commendation are easily highlighted.
After this the manager can make general comments on their assessment of the team member's skills. This part however is very subjective so must be introduced as comments only discussed behind closed doors and something for them to consider, but its not anything that can be quantified so it can't go into, say, consideration for a bonus.
Try not to compare team members against others - this is THEIR evaluation. It's also not wise to evaluate the team itself - the team is where YOU will be evaluated, not the individuals.