views:

125

answers:

2

Consider a web development company where the team leaders are asked to assess their team members. On what basis or factors should a team leader assess his team member's quality, programming in particular? Suggest me the general qualities too to be considered a high profile programmer.

+2  A: 

EDIT: turning into community wiki. Adding comment inputs

Several aspects for developer quality:

  1. speed: plain speed of cramming out code in lines/hour, revisions/day
  2. order: ability to tailor processes from company standards, design the world around for faster access, complexity reduction, designing tests
  3. design: ability to zoom in/out from technical (low) level to customer/business goals level considerations
  4. debugging: attention to detail, no fear of getting hands dirty. Passion for details.
  5. human-to-human interaction: because we often have to work in a team of humans, not just machines. Ability to be involved in organizational design and how his product is used.
  6. Independence: "free-flight time" between interactions.
  7. Specifically for web: UI design skill is a special kind of emotional intelligence, how to make the UI behave exactly as the user expects.

[please add more]

Pavel Radzivilovsky
and independence: doesn't require a lot of time/help from peers.
ChrisW
Two more: 1) proficiency: Hard to measure well, but should be around the mean between speed and debugging time spent. (If he codes awfully quick but spend ages afterward debugging his mess...). 2) mantainability of the result: Again, hard to measure well, but the code should adhere to standards (your point 2) and should be easily mantainable (related to your point 3)
Vinko Vrsalovic
Thank you all for your answers!! They were really reasonable and correct
BALA
+2  A: 

To add to what Pavel said,

  • Independent: doesn't require a lot of time/help from peers.

  • Communicative: will tell you if something needs your attention; therefore doesn't need to be supervised.

  • Flexible: willing to learn new skills, to participate in activities and with other team members which may be tangential to their main task (e.g. documentation, debugging, testing, specification, deployment, customer relations, project management).

  • Focussed, obedient, and dependable: does what's asked/agreed; completes their main task as well as taking an interest in other tasks.

  • Proactive: seeks what's necessary to complete their task.

ChrisW
Thanks for your answers!! They were really reasonable and correct.
BALA