Programmer Competency Matrix
Programmer Competency Matrix
Note that the knowledge for each level is cumulative; being at level n implies
Computer Science
2n (Level 0) n2 (Level 1)
Basic understanding of
compilers, linker and
interpreters. Understands
what assembly code is and
how things work at the
Doesn't know what a hardware level. Some
compiler, linker or knowledge of virtual memory
systems programming interpreter is and paging.
Software Engineering
Cannot express
thoughts/ideas to Peers can understand what is
peers. Poor spelling being said. Good spelling and
communication and grammar. grammar.
no evidence of
code organization within a organization within a Methods are grouped logically
file file or by accessibility
No thought given to
code organization across organizing code across Related files are grouped into
files files a folder
Imperative, Object-Oriented
and declarative (SQL), added
bonus if they understand
static vs dynamic typing, weak
languages with Imperative or Object vs strong typing and static
professional experience Oriented inferred types
platforms with
professional experience 1 3-Feb
years of professional
experience 1 5-Feb
Unleashed series, 21
days series, 24 hour Code Complete, Don't Make
series, dummies me Think, Mastering Regular
books series... Expressions
Reads
tech/programming/software
Has heard of them but engineering blogs and listens
blogs never got the time. to podcasts regularly.
Programmer Competency Matrix
s cumulative; being at level n implies that you also know everything from the levels lower than n.
Understands kernel mode vs. user Understands the entire programming stack,
mode, multi-threading, synchronization hardware (CPU + Memory + Cache +
primitives and how they're Interrupts + microcode), binary code,
implemented, able to read assembly assembly, static and dynamic linking,
code. Understands how networks work, compilation, interpretation, JIT compilation,
understanding of network protocols garbage collection, heap, stack, memory
and socket level programming. addressing...
5-Apr 6+
9-Jun 10+
Comments