The many titles of people that write code

I was just looking at my profile on LinkedIn, which more-or-less is the same thing as my resume. One thing I’ve always found annoying is what to call myself (e.g. a programmer versus software engineer, versus software developer, etc.). I’ve had many official role titles over the years.

My first title with NAVAIR was “Computer Scientist” (I had a degree in computer science after all – and they had to call me something). But everybody knew that a lot of computer “scientists” in the government were not performing tasking typically associated with science, particularly scientific research. My role was more in the practical application of science to meet requirements and build and test software systems. I used to put “Computer Scientist” on my resume for that position, but realized it was probably better to put “Software Engineer” as a more descriptive title. Other official title over the years involved various permutations with the words system, analyst, software, and engineer in them (sometime with perplexing qualifiers like “principal” thrown in for fun).

I couldn’t remember what KBR calls me now, so I looked it up and I’m evidently a “Technical Professional Leader – Systems”. I’m 99% sure I was something else last year, so perhaps they reshuffled how they did titles. But that’s not what I put on my resume.

On my resume, I simply put “software engineer” because I think it’s more descriptive and nobody can probably guess what I did if I were to tell them I’m “Technical Professional Leader – Systems”. but let’s break this title down for a minute anyway (just for fun). “Technical” can mean a lot of things, but I think of technology as the practical application of science and engineering (i.e. taking those thing we know and can do and applying them in a useful way). “Professional” simply means I get paid to do this. Perhaps there are volunteers at my company that work for free. I don’t know. I like my job, but somebody’s gotta pay the bills so I wouldn’t do it for free. “Leader” implies an ability to influence, coordinate, and inspire. But to many, it just means you deal with others (likely in a directing role) to get things done. I suppose it’s a mix of the two, but I think the former is more important. “Systems” is about as vague as “technical”. Your alarm clock is a system. Your car is a system. The freeways you drive your car on is a system. I deal with “computer systems”, especially how those computers interact with each other over a network, interact with other hardware, and provide meaningful information to their human operators.

All that said, I’m a big advocate of simple. I’d prefer the most succinct title… something like “coder” – i.e. one who writes code to accomplish their role. Everyone knows that there is a lot more to coding than just coding. But isn’t that true of a lot of jobs? Do you think that electrical and mechanical engineers are not subjected to the rigors of identifying requirements, iterating through system designs, a building process, a testing process, deployment, maintenance, security, and about a hundred other things? So I think coder is good enough, but realize that some bigger words command more respect.

The title I see most often in my profession is “Software Engineer”. I use this one on my resume because it does seem to be the most recognizable (followed by software developer). I always figured this title was used because it sounded like it might demand more respect than “Software Developer”, but I’m not sure. If I’m “engineering” something, perhaps that is more impressive than if I’m “simply developing” something. I don’t know. That’s just the way I see it I guess. Then there’s the “programmer”. This one is fine too, but “coder” is shorter if you’re going to be writing the word out the rest of your life and taking up valuable real estate on paper and screens. Then there’s the “hacker”. The connotation in some circles is that “hacking” is a malicious activity, while other circles think “hacker” is a title earned out of respect. I also think “hacking” (as a verb) might bring different ideas to mind. On one hand, “hacking” might simply mean writing code – i.e. “coding”. I’ll sometimes use the work in that sense – e.g. “I’m just hacking away at this app”. The other implication might be that I am “hacking into that system” – i.e. hacking as a way to gain unauthorized system access. So it’s a loaded word. I doubt many people have ever used the title “hacker” on a resume, but I’m sure there are a few. I don’t think that would be the most successful strategy in the defense industry, but it would be a conversation starter.

For now, I’m just a dude that writes code as “part” of what I do for a living. That part happens to be the most marketable part of my skillset, so it’s the focus of my functional title… which is “Software Engineer”, or “Software Developer”, or something like that.

Update: I’m now called a “Sr Manager – Systems Engineering” (that’s the actual official title). The “Sr” part is an abbreviation for senior and merely reflects that I’ve been doing this a long time. The “Manager” part is troublesome. I never liked that word… I immediately think of “Bill Lumbergh” in the movie OfficeSpace and a dark hole of activities that have little resemblance to engineering work. The “systems” part is still intentionally vague. “Engineering” at least implies I help build stuff. But no mention of software (the main thing I actually work on)? It’s a strange world we live in.

Leave a Comment