
Ask HN: Do you call yourself a software engineer or software developer? - WoodenChair
I&#x27;ve never understood why so many people in the industry insist on calling themselves software engineers. Do you have formal training in engineering? Do you employ engineering techniques? Doesn&#x27;t &quot;software developer&quot; better describe your role if you&#x27;re not using actual &quot;engineering&quot; techniques? Sure, some of us have taken software engineering classes, but does that make us engineers?
======
lgieron
All non-software engineers employ complex (often mathematical) techniques to
analyse their design in terms of reliability, performance, safety, robustness
to external conditions etc. We, except maybe for the area of critical embedded
software, barely do any of these things. What's more, with the rise of the
agile methods, we actually make a point to not spend time on those (see "Move
fast and break things"). That's why IMO most of us aren't engineers.

------
ilaksh
Computer Programmer = Software Developer = Software Engineeer.

The people that really try to make a distinction may have spent quite a lot of
money on a degree or may be trying to justify a higher salary.

Any programming job requires engineering. The amount of skills and
sophistication of techniques varies, but if you are programming without doing
software engineering then you're not doing it right.

In the context of computer programming, 'engineering' is applied broadly to
pretty much any activity beyond typing in a single script.

I believe engineering is an appropriate term because most computer programs
are very complex systems are require the application of a range of knowledge
and skills. And most of these systems are novel in certain ways often
requiring more problem solving ability than some other types of engineers may
ever need to apply.

------
RogerL
I just say "I write code" in casual conversation. Otherwise I use whatever
term my company uses. That has mostly been 'engineer'.

I did CS/EE in college. Can't say I elevate one over the other. I knew plenty
of people that were good at one but not the other. In general we optimize our
behavior - if you have to send a chip to fab you spend a ton of time on
simulation and validation before going physical. In software we can just fire
up our debugger and inject values in by hand. Neither is fundamentally
'better' than the other. However, I think you can get away with poor
techniques much easier in SW. Bosses notice really quickly when a CPU fab run
turn out chips that don't work and the cost (money) of that mistake is
detrimental to your career.

------
hkarthik
Over the course of my career I've held both the "developer and "engineer"
titles in different parts of the US. While some of the differences are simply
regional, I have noticed one significant difference between being called an
"engineer" versus a "developer".

I've found the term to closely correlate with how the organization thinks
about building software and how responsibilities and decision making around
what to build are broken down.

Companies that call programmers "engineers" often employ a number of other
people to determine what to build. Product Managers, Business Analysts, UX
specialists, etc are more commonly filing this role, while programmers simply
write the code, test it, deploy, and fix it.

Companies that call programmers "developers" usually have only limited
supporting staff like Customer Support and Ops to supplement the actual
programming work. Programmers are often experts in an industry (like
Healthcare or Finance) and often determine what to build as well as actually
building it. These responsibilities are sometimes clearly stated, but more
often the decision making is going on behind the scenes.

------
kasey_junk
I largely don't care about titles, my current one is Software Engineer, I self
describe as a software developer.

In the US the title of Engineer is not reserved except in a few very specific
instances and the argument about whether software creation is engineering
needs to first agree on what engineering is, a very open question and one that
seems largely uninteresting to me.

In my own head I think of myself much more as a logician/mathematician than I
do an engineer, but I bet you couldn't guess/interpret that from the output.

~~~
SayWhatIMean
Wikipedia says engineering's original meaning is from latin:

    
    
      >meaning "cleverness" and ingeniare
      >meaning "tocontrive, devise"

------
thoman23
> "Sure, some of us have taken software engineering classes"

Are you assuming that most of us do not have CS degrees? I assume that most
do.

That being said, I consider the terms to be interchangeable. I lean towards
"software engineer", but certainly don't mind the "software developer" label.

~~~
lfuller
In Canada at least the title "engineer" is professionally regulated, so the
terms "CS classes" and "software engineering classes" are non-interchangeable
as with the titles "software developer" and "software engineer". The second
requires an accredited software engineering degree and a license to practice
engineering professionally.

~~~
valdiorn
same in many Scandinavian countries, I believe. You can get in trouble for
calling yourself an engineer without the proper education (CS degree does not
count, unless its computer engineering)

------
jdmoreira
IMO it's pedantic to call yourself a 'software engineer'. I also feel that
people who do it are trying to elevate themselves from the rest.

If you feel you are a better developer just prove it with code and great
architectures. We don't need titles.

------
6d0debc071
I call myself whatever the job is asking for if I'm applying for jobs and I've
the skills. Other than that I tend to call myself by my name, or if I'm really
pushed to describe my job to others as a 'programmer.'

------
andymurd
For the final year of my degree, I got to choose a number of specialisations.
Choosing a certain combination would mean that my degree title would read "BSc
Computer Science", a different combination would mean that the title would
read "BSc Software Engineering". I chose the latter and now I have a magic
piece of paper that I can wave at recruiters to convince them to pay me more.

------
Inception
When my company was acquired, all of our "software developers" received the
title of "software engineer", so yes I refer to myself as a software engineer.
My title is trivial to me, but I would consider my day-to-day activities to be
a form of engineering. I apply my software knowledge in order to design,
build, maintain, research, and improve systems and/or processes.

------
mattkrea
I think in the case of large scale, high-availability systems it goes a bit
beyond development. I'd consider development writing the code.

~~~
byoung2
I like this distinction. Software engineering feels like you are building a
system, considering infrastructure, optimization, caching layers, etc., versus
just writing the code that runs on such a system. That distinction may be a
subtle one, but that's how I see it.

Source: I am director of engineering at a 35 person startup

------
kohanz
I'm in Canada, so I currently call myself a software developer, but I expect
to be awarded my professional engineering license soon (P. Eng.), after which
I can legally call myself a software engineer. The title signals that I have a
certain level of technical education and have been vetted through a licensing
process.

------
smcg
My company does not allow anyone to have the title of "Engineer" unless they
actually have a P.E. license.

------
Raed667
In my country it is pretty regulated, you need to get certified and do 5 years
after high-school to become an engineer. Or a basic "CS degree" would only
require 3 years. This is why if you get to call yourself engineer you pretty
much stick with that. + It gets you paid a lot more.

------
theaccordance
I typically go by software developer but at my current company I'm a software
engineer. From my perspective, they're fairly interchangeable, but Engineer
does elude to working on more advanced projects.

On the flip side of things, I think developer is a better buzzword.

~~~
mewm
While I agree on the former, I do get most buzz off of the word "engineer"
though.

------
amarcus
In my opinion, a Soft Developer is one who mainly just writes code. Whereas, a
Soft Engineer is somebody who looks after the project end-to-end (requirements
gathering, coming up with a solution and then coding it)

~~~
kohanz
I would call those "programmer" and "developer" respectively, but to each his
own.

------
sarciszewski
I just call myself a technology consultant that specializes in web programming
and application security, or simply consultant for short.

My actual title is Chief Development Officer, but meh.

------
HeyLaughingBoy
Yes. Yes. Maybe. No.

TBH, while I do have a degree in Software Engineering, and do practice actual
software engineering in the day job, I could give a rats ass what my actual
title is.

------
devhead
professionally: i agree they are interchangeable

personally: Engineers encapsulate architecture, infrastructure, development,
planning, research, dev-ops, provide leadership and lead the execution. Where
developers are responsible for specific execution of a project.

my boss: having "Engineer" in your title is offensive to the Engineers who
went to school for it, so we'll call you a developer now that you've been a
software engineer here for a while.

------
valbaca
I'm both: SDE = Software Development Engineer

So there's that.

