Programmer Competency Matrix v1.0

Computer Science (50%)

Programming Generic Skills (70%)

Data Structure

Algorithm

System programming

Hash Table - Collision

Priority queue

B-Tree

Binomial

ALV / Red black tree

Splay Tree

Skip List

Ties

Tree ~

Greedy ~

Divide ~

Graph ~

Space / Time Complexity Calculation

Dynamic programming

Numerical Computation

NP programming

Compiler

Linker

Interpreter

Assembly code

Virtual memory and paging

Kernel model vs. user model

Multithreading vs. Paralleling programming

Synchronisation primitives

Network and network protocol and socket level programming

Static link vs. Dynamic link

Garbage collection

Memory address

Gpu programming

Software Engineering (80%)

Source code version control

Build automation

Test automation

function test

UI test

Load test

Performance test

Problem Decomposition

Avoid duplication

Orthogonal Programming

System decomposition

Code organization

Names for member, function, class, namespace, file, folder, project, solution

Structure logic for class, object, component, library, project, solution

source tree branches structure and logic

Coding readability - style nature, flowing natural, no deep nesting

Defensive coding

IDE

Unit testing in many levels

Error (exception) handling

Assert verification

VS Code

MonoDevelop

VS

Math (20%)

2D Math

3D Math

Arithmetic

Algebra

Geometry

Matrix

Trigonometry

Linear algebra

Statistic and Probability

Precalculus

Domain

Unity3d (50%)

UI

Dynamic Physics

Shader

Geometry

Animation

Networking

Languages

C# / .Net (70%)

Data structure

Delegate

Attribute

Linq

Threading

Unsafe code

Plugin programing

Security

C++ (70%)

Pointer

Memory management

class / struct

security

std data structure

Web Client (40%)

Cloud Computing (0%)

SQL (50%)

FileIO

Memory management

QT (50%)

FileIO (90%)

Web Server (0%)

ASP.NET

HTML (30%)

CSS (60%)

Javascript (30%)

Python (70%)

Java (30%)

Influence Power (10%)

Blog

Answer question

Open source coding

Reading (10%)