先前看到了 Programmer Competency Matrix,所以就自己幫自己評比一下。

  • Computer Science
    • data structures: level 3
    • algorithms: level 3
    • systems programming: level 2
  • Software Engineering
    • source code version control: level 3
    • build automation: level 2
    • automated testing: level 2
  • Programming
    • problem decomposition: level 3
    • systems decomposition: level 2
    • communication: level 3
    • code organization within a file: level 2
    • code organization across files: level 2
    • source tree organization: level 3
    • code readability: level 3
    • defensive coding: level 2
    • error handling: level 1
    • IDE: level 2
    • API: level 1
    • frameworks: level 3
    • requirements: level 2
    • scripting: level 2
    • database: level 2
  • Experience
    • languages with professional experience: level 1~2 (familiar with OO language with functional patterns)
    • platforms with professional experience: level 2
    • years of professional experience: level 2
    • domain knowledge: level 2
  • Knowledge
    • tool knowledge: level 2
    • languages exposed to: level 2~3 (used Prolog before)
    • codebase knowledge: level 3 (I started a project before)
    • knowledge of upcoming technologies: level 2
    • platform internals: level 1~2 (not sure)
    • books: level 2 (actually used and read books)
    • blogs: level 3 (but not regularly update blog posts)