The company I work for (JPoint) we don’t have work titles. Well, we do, but you’re free to pick one. Some people call themselfs ‘software developer’, some are having more luck as ‘software architect’, others label themselfs as ‘software craftsman’ and there might be a ‘software ninja/rockstar’ hanging around.
But I have a problem with that… all those terms don’t reflect on what we do. Currently I’m sitting in a session at JavaOne and I’m having the feeling people don’t realize what their job actually is.
#So, what does a software coder do?#
When creating software we instruct a computer what to do.
That is it.
We tell a machine how to respond. We don’t build things (develop), we don’t slay things (ninja!), we don’t rock, we just tell the computer what to do.
That is why a programming language is called… a language. It is a way we, as coders, communicate with the computer.
Is it that simple? Sadly no.
When writing code, we are not alone. There are also other coders that read/write/edit/analyse our code. It isn’t enough that just you and the machine understand, other coders have to understand as well.
We started out programming in binary, but this was way too complicated for humans. So we invented programming languages. First we created assembly. This made it easier for a human to tell the machine what to do. But assembly was still too complicated. Slowly the programming languages became closer and closer to human language.
My job is to write code, code that the machine understands. The code must also be pleasant to read and understand by other humans. Also, in this, I’m putting a lot of creativity.
Maybe you are a software author or software writer:
wri•ter (rahy-ter) noun 1. a person engaged in writing (books, articles, stories, etc.) as an occupation or profession; an author or journalist. 2. a person who commits his or her thoughts, ideas, etc., to writing
This fits our job much better!
If you want something more exotic, and your code has a good flow and shows creativity, you might call yourself a: software poet:
po•et (ˈpoʊ ɪt) noun 1. one who writes poetry. 2. one who displays imagination and sensitivity along with eloquent expression.