A word for someone who has more skill than a code monkey to be at just the next level [closed]

A Code monkey is a computer programmer or other person who writes computer code for a living. This term may be slightly derogatory, meaning that this developer can write some code but is unable to (or not supposed to) perform the more complex tasks of software architecture, analysis, and design.[1] It is usually applied to junior programmers. http://en.wikipedia.org/wiki/Code_monkey

If a code monkey has dedicated his efforts to improve his knowledge and skill, what should we call him after at the next level/rank?


IMO, "code monkey" is much more than just "slightly" derogatory.

It's also very difficult to actually have hierarchy of nomenclature, as many really skilled developers call themselves coders or programmers (because they still do write code). But if you'd attempt to create such, I'd say it would be something like:

  1. coder
  2. programmer
  3. software engineer
  4. software analyst
  5. software architect

These might be prefixed with "junior", "senior", "lead" etc. These titles have more to do with pay grade, rather being reflection of skills.

Note, that it only can determine hierarchy within very limited context of one company or maybe even one department. Thus to be "programmer" in company A, might require much more skill, than being "senior software architect" in company B.


Ahem. "Senior code monkey"


In my opinion vartec's answer is good regarding the official classification. I will assume that you ask for informal or funny use.

The code monkey is neologism, from jargon (and probably from tape monkey):

code monkey: n
1. A person only capable of grinding out code, but unable to perform the higher-primate tasks of software architecture, analysis, and design. Mildly insulting. Often applied to the most junior people on a programming team.
2. Anyone who writes code for a living; a programmer.
3. A self-deprecating way of denying responsibility for a management decision, or of complaining about having to live with such decisions. As in “Don't ask me why we need to write a compiler in COBOL, I'm just a code monkey.”

Now, jargon does not mention the next step but instead has entries on real programmer, hacker, wizard, guru, superprogrammer.

Only "real programmer" here is still junior in his skills, but the word seem to portray character first, and only then the skills, so it should not be appropriate. However, if you look at tape monkey again, you will see it refer to one-banana problem. So you might employ something similar to

At IBM, folklore divides the world into one-, two-, and three-banana problems. Other cultures have different hierarchies and may divide them more finely; at ICL, for example, five grapes (a bunch) equals a banana. Their upper limit for the in-house sysapes is said to be two bananas and three grapes (another source claims it's three bananas and one grape, but observes “However, this is subject to local variations, cosmic rays and ISO”).

So you might roll your own mix of bananas, grapes or even go wild and throw in a pineapple for measure.