Live data from Hacker News

Programmer Competency Matrix

starling-software.com

31–40 of 127 posts

Re: Programmer Competency Matrix

#31
This is someone's (very arbitrary) opinion in a grid. I hope you don't actually interview people. Figuring out someone's skill level is a soft science; it takes months after a hire to really know where someone is.

Some people I know are great at fixing bugs but have narrow language experience. They're damn valuable. Others integrate well into teams and provide great product feedback. Where's that on here?

Experience isn't measured in years but in knowledge gained. You really start seeing it 4-5 years in, some people move forward, some don't.

There are so many holes in this. I feel like whoever wrote this has a strong desire to reduce people to a number. It's not only terrible, it's a great way to fool yourself.

Re: Programmer Competency Matrix

#32

I'm not sure this has anything to do with "competency". When I was in high school, I implemented a kd-tree for a ray tracer using photon mapping. I knew that my n^2 algorithm was slow and that there was probably a better way, so I Googled and figured out how to write code for such a structure. Since I'm not a programmer (I'm a chemical engineer), I don't instantly know all of the orders of various algorithms (which a…

I agree with this - e.g not being able to bust out a dynamic programming implementation perfectly on a whiteboard doesn't make you a bad programmer - more important is to understand, "hey, looks like when I divide this problem up it has overlapping subproblems - let me research using memoization or dynamic programming". But that still assumes you have the right terms in your head to be able to do the research - and to me that's where some fundamental knowledge of algorithms and data structures comes in handy.

Re: Programmer Competency Matrix

#33
Inexperienced programmers consult documentation a lot and the more experienced you become, the less you consult documentation? If this were true, the initialism "RTFM" would never have been coined.

Re: Programmer Competency Matrix

#34

I'm not sure this has anything to do with "competency". When I was in high school, I implemented a kd-tree for a ray tracer using photon mapping. I knew that my n^2 algorithm was slow and that there was probably a better way, so I Googled and figured out how to write code for such a structure. Since I'm not a programmer (I'm a chemical engineer), I don't instantly know all of the orders of various algorithms (which a…

to be fair: It's both. You need knowledge and smarts. If you know everything but you don't know how to apply anything to new problems, you're screwed. If you're a genius but you know nothing about computers, you're effectively incompetent at that point, and it'll take you a while to learn everything you need to know to solve the problem.

Re: Programmer Competency Matrix

#36
> automated testing

I love how they non-chalantly squeezed "automated testing" in there... because to really do well in that area you need so much more than the average handful of junit-or-whathaveyou tests and the whole "comes up with good test cases" is just extremely shallow. While developers do well to implement some simple unit tests, automated testing includes SO MUCH more they just left out. It is a whole software project and includes a lot more people than just "programmers" and "testers".

Another personal pet-peeve of mine are those endless suggestions of how to pick and hire developers, how can you get the very best of the best for the likely average salary you are offering to begin with - yet we have a continuous stream of coding-related horror stories.

It doesn't take any magic, it doesn't even take a catalog of weird questions that might work for google. Ideally go with recommendations, people who know people that are good. Or pick the interesting CVs and cover letters, avoid the buzzword rally. Then interview them and talk about what they have done so far and go into some details there, scratch on the surface, get a feeling for what they got going on. By now you should have quite a good idea. Then hire them on a temporary contract and see how they do. Be ready to give the new-comers and graduates a chance and be ready to invest in them, both in trainings and compensation.

IF you are in a position where you just cannot afford to put good faith in a common sense choice for a candidate then you should not be hiring in the first place because that means you either don't have the money for one more hungry mouth anyway or your project is so far into the death-march that another pair of hands is not going to rescue the sinking ship even if you get a true kernel-hacker to work on it.

Re: Programmer Competency Matrix

#37
I really like the idea of a way to measure my knowledge and skills. My preference would be for a directed knowledge graph, where nodes list the knowledge and skills fundamental to the nodes they connect to. This way, I could start from the bottom of the graph and place a checkmark on each node that I felt comfortable with. The end result would be an outline of what I needed to learn next to progress.

Alternatively, if I were in a rush to learn a specific item, the tree would give me a roadmap for getting there.

I'd be interested in a wiki-like interface for building such knowledge graphs, so that they could be built quickly and completely.

Re: Programmer Competency Matrix

#38
post #23

Earlier quoted context omitted.

? I was making a joke about the level 0 programmer (cut-n-paste) from the article.

Yes, but at his expense. With just text, it's hard to indicate friendly teasing with people you don't know well.

My lexical parser flagged the "apparently" as playful.

Re: Programmer Competency Matrix

#39
post #16

Earlier quoted context omitted.

I really appreciate it when earlier conversations are pointed to. (The additional points/comments/age numbers are wonderful, too, if you feel up to providing them.) I wonder if a bot could be written to automate this? There are lots of horrible reasons one could have for writing a HN comment bot, so I'm hesitant to even suggest it, but this seems like a really useful/good bot.

I have one, I used it, I got significant hate-mail, I decided I didn't need the bile I got, I discontinued it.

Actually, I can't tell you how many times a HN comment like yours has turned me on to an ultra-valuable related discussion that I would never have seen or thought to look for.

So don't let negative comments (perceived or actual) speak for us silent appreciaters!

Re: Programmer Competency Matrix

#40
Interesting. One thing that caught my eye was "someone who knows most of the tools from Scott Hanselman's power tools list." I had never heard of Scott Hanselman, nor his power tools list and had to look it up. Frankly, it looks useless to me as a programmer and looks more like a list of desktop gadgets, and watered down versions of tools bundled with most Linux distributions. He also doesn't mention anything for Linux (or OSX), nor Emacs. The list is very Windows specific.
Post reply on HN