What I do for a living

25 Jun 2013

I decided to write this post because I don’t know who I am. Well, from a professional point of view I don’t know who I am.

I am always a bit afraid when I know people are gonna ask me the infamous question - “What do you do for a living?”.
At this point, my mind starts running my personal algorithm for answering questions, which takes two inputs:

  1. the question to be answered
  2. the person that needs the answer

Based on these two very inputs, I generally elaborate all my answers. But, just to explain what my job is, the second input is split in many other inputs which are:

  1. is the person a friend, an acquaintance or a complete stranger
  2. is the person tech savvy / knows what a programmable computer is
  3. is the person interested in what the answer will be

Now, the algorithm gets a little bit trickier and the output (aka the answer) might take a while to be calculated (in the meantime I look like a bloody idiot blabbing something like “ehhh…eemmmhh…ehhhh”) but eventually I’ve got the answer. Well, the answers:

  • I program computers (if the person doesn’t give a damn what I actually do for a living)
  • I make iPhone and iPad apps (if the person is not tech savvy)
  • I am an iOS [Software] Developer (if the person is tech savvy)
  • I am an iOS [Software] Engineer (again, just if the person is tech savvy)

Those are my answers, because is what I rather say, at the moment. But I am not really sure if they are the best possible answers.
At the beginning, I was torn to define myself an “Engineer”, a “Developer” or just a “Programmer”. But eventually I analysed each of them and took my decision.

Let’s start from the latter. I don’t quite like the term programmer. It feels empty to me. It feels like a cold machine which types stupid nonsense characters in front of another machine. So, I prefer not to use this term.

I much rather use the term developer than programmer, not because I like it, just because it seems the most recognised term for a person who writes software. And it is much less worse than programmer.

But at the moment I quite like to use the term engineer. I don’t actually have an engineering degree (nor I want one), so probably calling myself engineer is not right.
Nevertheless, my job title is “Application Engineer”, the department I work in is the “Engineering Department” and my colleagues are engineers.
I fancy this term because it says much more about my actual work. I find myself spending less and less time coding and much more time discussing requirements, thinking about high level architectures, drawing diagrams to find the best ways to engineer the software.

There is another term which I really like it a lot: Software Craftsman. It is just two words but, it describes what I do during my 9-6 job and what I am passionate about: crafting software.