Help me find names for a developer assessment graph



  • I'm thinking about a graph where the y axis measures the skills it takes to create a valid specification (domain-specific know-how, analytical skills and communication skills) and the x axis measures implementation skills.

    domain-specific know-how
    communication skills
    analytic skills
                   ^
                   |
              high |3   6   9
                   |
            medium |2   5   8
                   |
               low |1   4   7       
    programming skills
                  -+------------>    infrastructure know-how (DB, middleware etc.)
                   |                 software design / architecture skills (OO, n-tier etc.)
                    l   m   h        tools knowledge (IDEs, debuggers, profiles, version control etc.)
                    o   e   i
                    w   d   g
                        i   h
                        u
                        m



    Now I need names for the marked points in the graph. Should be non-offensive (e.g. not "Lamer" for 1). These names should reflect the job such a person could be doing resp. should be doing.

    For example,

    1..Beginner

    2..User

    3..Analyst

    4..Junior Programmer

    5..Programmer

    6..Designer

    7..Hacker

    8..Senior Programmer

    9..Enterprise Architect (just kidding ;-)


    What names would you suggest? Have you seen something similar in a book; if so, which book?



  • your assigning job titles to the graph.  those aren't labels for the graph they are examples of what someone in that section of the graph could be doing.





  • One could disagree with your ranking system, because the titles you give for the levels 0-9 have subjective meaning, as is the sequence, and I personally believe that ten qualifitcation levels is too much precision for such subjectivity to be pinned down.

    Skills cannot be machine-read.
    You can define explicitly that someone must have read X% of book Y, but the titles 'hacker', 'senior', 'analyst' are so humanly vague in their meaning, I think that while your goal is admirable, the execution is futile and should be abandoned in favour of a case-by-case approach, rather than attempting to impose this rigid definition of 'skill' onto everyone.


    PS.
    I'd call it a Qualification (Requirement) Diagram. QD. QRD.



  • @dhromed said:

    One could disagree with your ranking system, because the titles you give for the levels 0-9 have subjective meaning, as is the sequence, and I personally believe that ten qualifitcation levels is too much precision for such subjectivity to be pinned down.

    Skills cannot be machine-read.
    You can define explicitly that someone must have read X% of book Y, but the titles 'hacker', 'senior', 'analyst' are so humanly vague in their meaning, I think that while your goal is admirable, the execution is futile and should be abandoned in favour of a case-by-case approach, rather than attempting to impose this rigid definition of 'skill' onto everyone.


    PS.
    I'd call it a Qualification (Requirement) Diagram. QD. QRD.


    It's not a 1-9 rating. For example, 4 is not "better" than 3. (I could have used 11,12,13,21,22,23,31,32,33 instead, now that I think of it...)
    And of course it's by no means absolute. (edited) It shows how well someone is suited for a specific project. For example, for a warehouse management system done in Java and Oracle, I would place myself at 9. If it was an ASP.net project about accounting, it would rather be position 5 (generously rated) or even 2.
    This graph is meant to show the programmer or the guy who is managing how well someone is sutited for his current position and what could be done to improve that; or otherwise, how much is lost (at least unused) if this person is assigned to another task.

    (edited)
    I 've found a definition for "Low", "Medium" and "High":
    Low = can't really help without learning a lot
    Medium = helpfull, but can't do it on his own
    High = competent enough to do it single-handed, or take take lead of a team

    By that definition, someone doesn't have to be a mega-guru to be rated "high". It's enough if he can do the job on his own.



  • any competent programmer with enough time and man page/javadoc/whatever else documentation would be able to complete most things on his own given he is told the specs and everything he needs.



  • @tster said:

    any competent programmer with enough time and man
    page/javadoc/whatever else documentation would be able to complete most
    things on his own given he is told the specs and everything he needs.




    I believe the "with enough time and documentation" is the key.  My
    guess is the person in the "high" level could be thrown on the project
    and they will be able to contribute from day 1.  Where as someone
    in the the low category will need lots and lots of hand-holding. 
    Whether it be the technologies (horizontal-axis) or the application
    domain (vertical-axis).




  • @jethro said:

    @tster said:
    any competent programmer with enough time and man
    page/javadoc/whatever else documentation would be able to complete most
    things on his own given he is told the specs and everything he needs.




    I believe the "with enough time and documentation" is the key.  My
    guess is the person in the "high" level could be thrown on the project
    and they will be able to contribute from day 1.  Where as someone
    in the the low category will need lots and lots of hand-holding. 
    Whether it be the technologies (horizontal-axis) or the application
    domain (vertical-axis).




    Exactly. Even a "medium" person is expected to contribute (nearly) from day one, but only in a limited range or with some help. For example, a few months ago I was brought to help out in a project that used some Java framework I'm not experienced with. After my coworkers had made some pages, I was able to use that as a template for my own work; from time to time, I had to ask her for help.
    That makes me a perfect example for the "medium" level in my graph, while she is (obviously) on the "high" level.


Log in to reply