Programmers assessment one of the most difficult procedure in software development. How to decide if interview was good or bad? Do you ready to promotion? Do you deserve bigger salary? These questions can be answered by assessment, but the assessment is the question which is very difficult to describe only from one side, technical or social (soft skills).

At my previous job we used to have annual assessment with public available competency matrix. I was wondered when I saw it first time. Most of skill were not about programming. Usually such skills are called “soft skills”. These skills are “Communicating with teammates” or “Providing feedback”, “Leading”,etc.. Moreover, there was “an English skill coefficient”. For example, if you have Upper-intermediate or Advanced, you’re automatically get 1.2 multiplied score at the assessment despite you coding attitude. It can be due to specific company needs, I’m not sure. And yes, my employer provided all required services to increase your skills and to develop you as a better team-player including English courses.

I think each of them is very important but cannot make your the programming super-star. You must do code and do it well.

However, there were skills like “Developing code” or “Using frameworks”, but not a lot. I found out a bigger technical matrix couple days ago. You can look at it here: Programmer Competency Matrix – Sijin Joseph. As far as I understand it is quite popular among developers and team leads. The matrix has skewness to technical skills, but is rather better than my previous one. It covers a lot of technical sides. However, I think communication skills is less important if we’re talking about domain expert with 10 years’ experience and author of framework in Erlang, in my humble opinion.

I have been arguing a lot with mates about the subject. Usualy this discussions ends with an idea to make more particular scores. What I expect from programmers assessment is to differentiate matrix to multiple types of programmers. I mean it is better to have different matrixes for

  • Application Developer
  • System Developer
  • Kernel Developer
  • Backend Developer
  • Frontend developer
  • Data scients
  • Database developer
  • etc.

Most of them are very different. Past years I noticed that more people do not like to take a wider range of responsibilities. They just want to do only one thing whatever it is (front,back, db). I suppose it will continue for a while until developers become blue collar workers completely. Then we will definitely have a government standard for programmers assessment.

P.S. The matrix from my previous job was the same for developers (doesn’t matter specialisation), testers, and analytics. All of the differences were managed at interviewing step with PM.

Related Posts

developing

Vim as python IDE

This post was expected to be personal and just to tell the world my pain. I tired and wanna sleep. Step by step would be there. Meanwhile, I have done a lot of steps without Read more…

developing

dotfiles repository

Since I started using vim, I’ve found that too many software developers store their configuration files at github. It really awesome. Last year I wrote a post at habrahabr (russian) how do I synchronize settings Read more…

developing

Print out all .net libraries or exe versions

This post is all about small but very useful piece of powershell code. We’re using VSTS at work, and our continuous delivery workflow contains step to put all builds to network share (NAS in local Read more…