I've asked a similar question to candidates, which allows me to have an open ended conversation. My question is: "On a scale of 1 to 10, how do you rate yourself as a programmer." The answer to this question rarely matters, but it opens up room for follow-up questions. For example:
1. Why did you pick the score that you did?
2. Have you identified areas of improvement that will help improve your score? What are those?
3. What are you doing to improve in the identified areas, and when do you think you will get there?
4. Give me an example of a strength that contributes to your current score? What is the sample population that you used to evaluate that strength?
etc...
I ask this question towards the end of the interview, and only if I have decided to hire the candidate, and only if there are no more specific questions to ask. Asking this too early and before having enough data points from specific questions, is a waste of time and energy - both for me and the candidate.