Developer, Programmer, Engineer - Decoding the Titles in the Coding World

I have written code for a couple of decades now and have been called a lot of things during that time. As a person who writes code, it is important to choose a title that describes what you do. There are quite a few to choose from.

Hacker or Coder

When I didn’t have to write code at my day job and somehow made money off of the code I wrote on the side, I considered myself a hacker or coder. I had a day job, and I made more money part-time than I did at my full-time job.

I didn’t answer to clients or bosses. I sold software, and I used software to promote other people’s products. I wrote it all. It worked. And I didn’t care what other people called me. The numbers spoke for themselves.

I also had a chip on my shoulder. I had something to prove. I called myself a “hacker”, but have since toned down to “coder” in the title of my blog.


“Hacker” was my persona when the internet still made noise when you connected to it. When I talked to people in real life, I used the “want to be” term, “programmer”, as in “I wanted to be a programmer.”

I had moved in with friends that were going to college and my plan was to turn this want into a reality. I was going to go to school and become a programmer. But I spent too much time on the internet building things and never got around to it.

So I never really called myself a programmer except to people who I figured would have no clue what I did. Hacker had bad connotations. And there weren’t many other terms at the time that really explained what I did. I hadn’t heard “software engineer” yet. Sometimes, I just resorted to “I write software.”


This was my title at my first coding job. At that job, it meant “person that handles anything computer or internet related”. I wrote code. I managed online advertising. I did SEO. I fixed printers. When we were busy, I helped ship orders.

But the pay fit the title and not the work I did, so when a head hunter found me, I left.


The title “developer” was my favorite for a while. My official title was “app developer”. I was proud of that for a while. I wrote code in PHP and JavaScript and put the app developer title on my LinkedIn page. It took a few months to realize why recruiters were contacting me about mobile development jobs.

I was also a “UI developer” once, writing SQL and doing DevOps for the first 18 months before writing React code on the frontend. Still not an official “UI developer”.

The “developer” title’s confusing. It needs modifiers like “UI” and “app” even when they are wrong, because why would a real estate developer stare at a screen all day.

Software Engineer

When I saw this term, I knew it was a winner. It has software in the name which got past the vagaries of “developer”. It also replaced “programmer” which still held the “want to be” label for me.

Calling yourself a “software engineer” pisses off people that went to engineering schools if you forget the “software” part. Look it up. Even the Atlantic has an opinion. And I think that is just peachy because the internet is serious business.

Software engineers also have grades. I don’t know who came up with the I, II, III, and various other number grades, but they have the wrong idea. Way too specific. We are not in elementary school here. I have turned down jobs because they had a number in the job title.

Now I can dig the Junior, Mid, and Senior grades. I know exactly where I stand and who my minions are. Who knows how the numbers work? Are they in ascending order or descending order? Do they translate to other jobs? Could I hope one day to become a level 8 operating thetan?

Data Scientist

This another is another awesome title. I rank it up there with rocket scientist and brain surgeon. It is a great way of getting the point across that you are smarter than everyone else, even though you can get a certificate that says you are one in a few months.

There was a time I considered getting one of those certificates. It was a new title, every company wanted one, and there weren’t many around. The data scientist that worked on my team full-time also had another full-time data science job. Both employers knew this and didn’t care. They would rather pay for half a data scientist than not have one.


I had management jobs before I had a programming job, and I see management as a step backward. So I think the architect title is what I want in the future. But sometimes I am not so sure.

In my mind, an architect looks at the big picture. He sees how all the pieces fit together. He experiments with new technologies and sets the direction for the software that the engineers will build.

But sometimes an architect is a manager. Some architects I ran into seemed more like product reps. And many spent more time making small talk in meetings than I am comfortable with.

I was excited the first time I got the architect title on a project. I was also the only software engineer on the project. So I hustled and got the project out the door because I was the “architect”. And it didn’t work the second time.


Call yourself what you want, whatever fits you now. I used to explain what I do to other people. I was proud of it. But most people don’t really know what you do anyway, including those “real” engineers. And most employers just want to know you can get the job done, so take a UI developer job and write SQL.

Stephan Miller

Written by

Kansas City Software Engineer and Author

Twitter | Github | LinkedIn