Here is the answer I gave:
- The developer genuinely cares about the client needs: If the developer does not care about delivering something that serves the client needs, then no amount of work would help achieve success.
- The developer strives as much as possible for effective communication with the client: After all, if the developer cannot communicate well with the client to understand their needs, then no amount of technical skill will help them deliver what the client needs.
- The developer is always eager to learn something new: As long as the developer is motivated to learn, he will be able to overcome any shortcomings in his current technical skills.
- The developer is willing to collaborate with others: A developer who does not play well with others will hamper the project velocity and productivity regardless of how superior his skills are compared to others'.