Your java skills on a scale of 1-10
Being asked to rate your programming skills on a scale of 1-10 is a often asked question in software engineering interviews.
I find that the question is often not so much about where the candidate places himself (it's all relative) but really about how the candidate interprets the scale, and what got him there (from previous level) and what would take him to the next level.
In an actual interview, it is a good idea to peg a few milestones to understand the expectations and scale better before answering. Some milestones that one could ask the interviewer to name on the scale before answering:
1) Know the language constructs from school books well and can use them to write good programs.
2) Have programmed in industry for a few years, doing solid object oriented programming, building debuggable code within our own application.
3) Have designed and built internal use API's and seen them used in multiple parts of team.
4) Have designed API's for wide internal/external use and seen them grow to multiple teams.
5) Developed SDKs/libraries for external consumption and supported them.
6) Built API's/libraries that have been widely adopted in the community.
Thanks
Umesh