Poll

Do you consider "software engineer" a valid job description?

Yes
84 (92.3%)
No
7 (7.7%)

Total Members Voted: 90

Author Topic: Why do "programmers" call themselves... "engineers"?!  (Read 23038 times)

0 Members and 1 Guest are viewing this topic.

Offline etiTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 1801
  • Country: gb
  • MOD: a.k.a Unlokia, glossywhite, iamwhoiam etc
Why do "programmers" call themselves... "engineers"?!
« on: November 16, 2019, 04:26:30 am »
[UPDATE]: Added a poll.


Let me ask this:

> Why do "programmers" get referred to as "coders" in many instances? (that's like calling a poet, a "pen mover" - it very much undermines their profession, and reduces them to the lowest common denominator... I think... I can't articulate what I mean)

> Why do "programmers" refer to themselves as that, when in many cases they have ZERO knowledge of the hardware which is abstracted away from them, 5 layers down at bare metal level, and ALL they know how to do is drag and drop boilerplate templates which call APIs...?

> THE most irksome of all, is the sheer delusion that seems to have swept across Silicon Valley & slowly become accepted, is that "programmers" are... ENGINEERS!  :-//

Please read these articles; the former is well written, and also the latter, but I tend to lean toward the wording of the former, more, not sure why. Bottom line, as I see it, is this:

++ You can't grab a block of binary, sand the rust off it, throw it in a lathe and machine it into a part.

++ You can't expect to call yourself an "engineer" when the fundamental concepts (text) with which you fiddle, all day long, can be (and IS) changed on the whim of some "framework" manager, overnight. Imagine if the mass of a block of lead could be arbitrarily edited to some variable, in a second. Imagine if constants and measurements in physics could be changed to fit some formula, "just because".

I am not annoyed, nor even slightly angered, or in any way fazed by the term "engineer" used to refer to code monkeys, but many others may be, and to be frank, I find it a laughably naive term to use, based on the fact that people hearing you say "I am an engineer" when what you do is fiddle with lines of text, laughable and quite insane.

Yes, I know software CONTROLS things in the physical realm which are engineered, but that doesn't make the software author an engineer. Ever.
Here's the articles:

> https://www.theatlantic.com/technology/archive/2015/11/programmers-should-not-call-themselves-engineers/414271/

> http://nic.ferrier.me.uk/blog/2013_04/you-are-not-an-engineer
« Last Edit: November 17, 2019, 07:31:05 pm by eti »
 

Offline Bud

  • Super Contributor
  • ***
  • Posts: 7236
  • Country: ca
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #1 on: November 16, 2019, 04:51:40 am »
After seeing a "Customer Experience Engineer" and a "Liability Engineer" at a known company (everyone knows it) it is difficult to surprise me by any other title.
Facebook-free life and Rigol-free shack.
 
The following users thanked this post: Tom45, magic

Offline jesuscf

  • Frequent Contributor
  • **
  • Posts: 503
  • Country: ca
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #2 on: November 16, 2019, 05:01:34 am »
My opinion is that if the 'programmer' is carrying a screwdriver, he can call himself whatever he wants.
Homer: Kids, there's three ways to do things; the right way, the wrong way and the Max Power way!
Bart: Isn't that the wrong way?
Homer: Yeah, but faster!
 
The following users thanked this post: KE5FX

Offline CatalinaWOW

  • Super Contributor
  • ***
  • Posts: 5516
  • Country: us
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #3 on: November 16, 2019, 05:03:50 am »
All branches of the engineering field have this issue.  Some members of the branch understand the world, their specialty and have the tools and creativity to create something new out of the possibilities.  Other members push buttons (frequently but not always the right buttons) and record test results (also frequently correctly).  Both claim the title "engineer". 

The ones who are "real" engineers know it, and don't have to keep reminding others, because those around quickly recognize them.  Lesser lights are usually pretty insistent about titles.  And both fortunately and unfortunately those around them also pretty quickly recognize them.
 
The following users thanked this post: rs20, GeorgeOfTheJungle, KL27x, Gregg, pmercier

Offline KaneTW

  • Frequent Contributor
  • **
  • Posts: 811
  • Country: de
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #4 on: November 16, 2019, 05:14:57 am »
https://en.wikipedia.org/wiki/Computer_engineering

Software engineering is engineering. Not in the traditional definition of the word, but in the spirit? By the actions that you take as a software engineer? Absolutely.
 
The following users thanked this post: hans, rs20, Dubbie, tooki, zzattack, Masa, emece67, I wanted a rude username

Offline etiTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 1801
  • Country: gb
  • MOD: a.k.a Unlokia, glossywhite, iamwhoiam etc
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #5 on: November 16, 2019, 05:18:23 am »
https://en.wikipedia.org/wiki/Computer_engineering

Software engineering is engineering. Not in the traditional definition of the word, but in the spirit? By the actions that you take as a software engineer? Absolutely.
Ohhh, Wikipedia says so? Why didn't you say before, well in that case...
 

Offline etiTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 1801
  • Country: gb
  • MOD: a.k.a Unlokia, glossywhite, iamwhoiam etc
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #6 on: November 16, 2019, 05:21:09 am »
https://en.wikipedia.org/wiki/Computer_engineering

Software engineering is engineering. Not in the traditional definition of the word, but in the spirit? By the actions that you take as a software engineer? Absolutely.
Ohhh, Wikipedia says so? Why didn't you say before, well in that case...

If a programmer can call themselves an "engineer" through manipulation of text and digits, then I, as an engineer, get to claim my title as "programmer" since I can set the temp on my soldering station, and type WhatsApp messages. :p
 

Offline maginnovision

  • Super Contributor
  • ***
  • Posts: 1966
  • Country: us
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #7 on: November 16, 2019, 06:46:16 am »
In my experience good software people respect the hardware guys. Good hardware also respect the software guys. Then You have the average people on either side who say the other side is a bunch of know nothing hacks.  We need everyone and creating a solution to a problem is engineering in software or hardware.
 
The following users thanked this post: hans, tooki, Oslaw

Offline wilfred

  • Super Contributor
  • ***
  • Posts: 1342
  • Country: au
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #8 on: November 16, 2019, 07:01:57 am »
> THE most irksome of all, is the sheer delusion that seems to have swept across Silicon Valley & slowly become accepted, is that "programmers" are... ENGINEERS!

But why is it irksome? The term engineer came about before software programming. if you distill down what it is to be an engineer abstracted from any particular field or discipline or material then why cannot producing a program be engineering?
 

Offline IanB

  • Super Contributor
  • ***
  • Posts: 12477
  • Country: us
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #9 on: November 16, 2019, 07:15:45 am »
Don't get stuck on the idea that engineers have to deal with hardware. Engineering could be considered using science, logic and mathematics to arrange things in an organized fashion to produce an efficient, functional and economic product.

If the product is a software application then it absolutely needs to be engineered, and doing so is software engineering.

I can assure you as one who works in the field that software engineering is as hard as any other branch of engineering. The need to provide a logical structure, a functional decomposition, and a verification of correct performance is very real.

One thing you find out as an engineer is that if you abstract away the details, all branches of engineering have many things in common. If you work with software you quickly find that software is no exception.
 
The following users thanked this post: hans, ivaylo, rs20, tooki, newbrain, Masa, james_s, pmercier

Offline sleemanj

  • Super Contributor
  • ***
  • Posts: 3051
  • Country: nz
  • Professional tightwad.
    • The electronics hobby components I sell.
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #10 on: November 16, 2019, 07:18:48 am »
A bridge engineer takes requirements, designs a structure to meet those requirements, overseas the implementation of that design, and confirms that the result meets the requirements.

A bridge builder implements a bridge design.

A software engineer takes requirements, designs a system to meet those requirements, overseas the implementation of that design, and confirms that the result meets the requirements.

A programmer implements a system design.

Sometimes software engineers are also programmers, and if not almost certainly were programmers initially. 

Can the same be said for bridge engineers, I'm not sure.


~~~
EEVBlog Members - get yourself 10% discount off all my electronic components for sale just use the Buy Direct links and use Coupon Code "eevblog" during checkout.  Shipping from New Zealand, international orders welcome :-)
 
The following users thanked this post: hans, Psi, Towger, rs20, newbrain, Masa, james_s, paullo

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #11 on: November 16, 2019, 07:23:23 am »
I've done both hardware and software, I was called an "engineer" in both cases. Software engineers design and build software, how is that different from a hardware engineer who designs and builds hardware? It takes a lot of knowledge and a certain personality type to do well at either one. A novice can't just push a bunch of keys and end up with working software any more than they can throw a bunch of components at a breadboard and end up with working hardware.

Designing and implementing a complex software product is every bit as demanding as designing a complex piece of hardware or designing a building or bridge that is functional and safe. An engineer's job is to see the big picture, and use their arsenal of knowledge and creativity to come up with solutions to problems at hand. I think a lot of people who have not done real world software development have no idea the amount of depth there is. Just like designing hardware there are zillions of ways to accomplish the same thing, each with their own unique pitfalls and challenges. Knowing the language is only a small part of the puzzle, the real talent is in thinking up solutions that are elegant, functional, reliable, scaleable, testable and maintainable.
 
The following users thanked this post: hans, rs20, Masa

Offline VK3DRB

  • Super Contributor
  • ***
  • Posts: 2268
  • Country: au
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #12 on: November 16, 2019, 07:37:31 am »
In Australia you cannot call yourself a medical doctor unless you are qualified. Or even a plumber unless you are qualified. But anyone can call themselves an engineer, even though they may have no qualifications or experience. The US model should be adopted here in law where you can only call yourself an engineer if you have a degree in engineering.

With programmers, they are not engineers unless they also possess an engineering degree. Do they understand control theory? Fourier analysis? Generally, no. Likewise, how many electronics engineers know how to program properly, employing good embedded programming practices? From my experience, very few.

That being said, one of the smartest "engineers" I have ever worked with did not have a degree, but was a technician. He went on to get his degree. But the dumbest "engineer" I ever met said they had a degree. He was fired after 9 months of uselessness in the job. I am certain his qualifications were fraudulent.

Final point: The model that France uses is best in the world in my opinion, where you have to train to be a technician before you can train to be an engineer. Too many engineers elsewhere without practical knowledge of experience know sweet stuff all about the real world. The worst are those who think they know everything.
« Last Edit: November 16, 2019, 07:39:08 am by VK3DRB »
 

Offline james_s

  • Super Contributor
  • ***
  • Posts: 21611
  • Country: us
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #13 on: November 16, 2019, 07:54:48 am »
In Australia you cannot call yourself a medical doctor unless you are qualified. Or even a plumber unless you are qualified. But anyone can call themselves an engineer, even though they may have no qualifications or experience. The US model should be adopted here in law where you can only call yourself an engineer if you have a degree in engineering.

Huh? There is no requirement in the US to have a degree in order to be called an engineer. If you want to call yourself a PE then you need to have an engineering degree but anyone can have a job with the title of engineer in most states. There are a few states that have tighter regulations on this but it ends up just sounding snooty and ridiculous. Personally I think degrees and titles are already overrated, I have seen very little correlation between the degrees and certifications a person holds and their level of knowledge or practical ability. Not that education is ever a bad thing, but I've encountered a lot of people with very impressive degrees who were somehow useless in terms of actual practical abilities. Likewise I've worked with some completely self taught people who were absolutely brilliant. If someone engineers things I'm not about to try to tell them they can't be called an engineer. I'm ok with titles like PE specifically denoting a degreed engineer though.
 

Offline Karel

  • Super Contributor
  • ***
  • Posts: 2270
  • Country: 00
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #14 on: November 16, 2019, 08:05:47 am »
It all boils down to this:

The cost involved to patch hardware is much higher than software.
This has lowered (and sometimes completely removed) the quality requirements of software development.

Good software development can be like engineering. Unfortunately, it's very rare because of the "release quick, fix later"
motto of most companies.
 
The following users thanked this post: tooki

Online magic

  • Super Contributor
  • ***
  • Posts: 7375
  • Country: pl
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #15 on: November 16, 2019, 08:36:14 am »
It wasn't always like that. "Software engineering" was a movement which intended to apply methods of engineering to software (design, specification, QA, validation, testing) in order to hopefully ::) make software more reliable, designable and predictable. Originally it was associated with people sitting, drawing "blueprints" of software and trying to get programmers to follow them.

Then the name kinda leaked into the mainstream and today every code monkey who copy-pastes together JavaScript snippets found on Stack Overflow calls himself a software engineer.

Oh, and he is the "EE" in our team whom my boss intends to train to replace me after my upcoming leaving for China.
:-DD
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21062
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #16 on: November 16, 2019, 08:56:09 am »
If a programmer can call themselves an "engineer" through manipulation of text and digits, then I, as an engineer, get to claim my title as "programmer" since I can set the temp on my soldering station, and type WhatsApp messages. :p

Please define where hardware stops and software begins. Without that your questions are built on not comprehending modern systems.

You should include, but not be limited to, consideration of:
  • microcoded processors - is the microcode hardware or software
  • how intel can issue bugfixes to its x86 processors that are installed on motherboards in customers premises
  • whether a finite state machine specification (e.g. to control traffic lights) is hardware or software - or both or neither
  • is someone implementing a function in an FPGA a hardware or software engineer
  • is someone implementing a DSP function a hardware or software engineer
  • is someone implementing a mechatronic product a hardware or software engineer

And that is without even mentioning fundamental theoretical concepts that dictate what the technology-du-jour can and cannot achieve.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 
The following users thanked this post: tooki, zzattack, newbrain

Online magic

  • Super Contributor
  • ***
  • Posts: 7375
  • Country: pl
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #17 on: November 16, 2019, 09:11:00 am »
Half of those "software engineers" don't even know what "a microcode" is. Stop splitting hair.

Besides, tying engineering to hardware is silly. You can social engineer people and you can build hardware in complete violation of any accepted engineering practice. Is it engineering if I whack together a house from cardboard joined by shoestrings which is collapsed by the first wind because I have no idea what I am doing? ;D
« Last Edit: November 16, 2019, 09:15:37 am by magic »
 

Online iMo

  • Super Contributor
  • ***
  • Posts: 5447
  • Country: va
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #18 on: November 16, 2019, 09:48:36 am »
To become an "Engineer" of something does not guarantee she/it/he is a knowledgeable Expert for something.
Engineering education "should" guarantee it/she/he is a person who was taught end examined by an authority about "latest and best" theories/methods/processes/tools/practices/ethics on how the good engineering in the particular field of interest should be delivered..
« Last Edit: November 16, 2019, 09:51:43 am by imo »
Readers discretion is advised..
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21062
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #19 on: November 16, 2019, 09:55:12 am »
Half of those "software engineers" don't even know what "a microcode" is. Stop splitting hair.

If someone wants to try to make a distinction between hardware and software they have to split hairs!
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 
The following users thanked this post: vk6zgo, tooki, eti

Offline hamster_nz

  • Super Contributor
  • ***
  • Posts: 2812
  • Country: nz
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #20 on: November 16, 2019, 10:09:58 am »
With a toe in both camps, this is interesting to watch  :popcorn:

'Real' engineers are not perfect either. Even after we had a building collapse due to design flaws, 'real' engineers still designed and approved obviously flawed designs:

https://en.wikipedia.org/wiki/CTV_Building

https://www.stuff.co.nz/business/113226624/new-engineer-spotted-alleged-defects-in-christchurch-highrise-from-the-street

Gaze not into the abyss, lest you become recognized as an abyss domain expert, and they expect you keep gazing into the damn thing.
 

Offline VK3DRB

  • Super Contributor
  • ***
  • Posts: 2268
  • Country: au
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #21 on: November 16, 2019, 11:17:41 am »
...Good software development can be like engineering. Unfortunately, it's very rare because of the "release quick, fix later"
motto of most companies.

Very false economy. In the end it bites them in the arse. It is usually better to "Do It Right the First Time". Reality is they get their processes sorted out AFTER a mess is created.

One bloke I had met for a short time prior to him leaving a company had written 50,000 lines of embedded C-code. The issue here was the company CEO and others did not have any experience with firmware development - so there were no checks and balances, no coding standards, no processes, no nothing. It was a dog's breakfast - a complete illogical mess based on little understanding of coding or how a microcontroller works. One guy who took over his "code" walked out within two weeks, saying he would rather be in jail. I foolishly took it on and it took me 18 months to fix it up. The result was 30,000 lines of structured, readable, and efficient code - and about 200 mostly serious bugs fixed along the way. I vow never to take on fixing up some idiot's code again. But a lesson learnt never to take on such a soul destroying task again. I would rather be on the dole.
 
The following users thanked this post: tooki

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21062
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #22 on: November 16, 2019, 11:21:50 am »
With a toe in both camps, this is interesting to watch  :popcorn:

I've more than a mere toe in each camp :)

I stand with one foot in each camp, and hop between them as necessary!

It can be fun to get a coworker down the pub, and get them to try to distinguish between hardware and software. It is easy to get them to tie themself in a knot; the skill lies in dragging out that process  >:D
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline vk6zgo

  • Super Contributor
  • ***
  • Posts: 7812
  • Country: au
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #23 on: November 16, 2019, 01:14:19 pm »
In Australia you cannot call yourself a medical doctor unless you are qualified.
But he can call himself a "doctor" although he is  only a "Bachelor of Medicine", not a "Doctor of Medicine".
Quote
Or even a plumber unless you are qualified. But anyone can call themselves an engineer, even though they may have no qualifications or experience. The US model should be adopted here in law where you can only call yourself an engineer if you have a degree in engineering.

With programmers, they are not engineers unless they also possess an engineering degree. Do they understand control theory? Fourier analysis? Generally, no. Likewise, how many electronics engineers know how to program properly, employing good embedded programming practices? From my experience, very few.

That being said, one of the smartest "engineers" I have ever worked with did not have a degree, but was a technician. He went on to get his degree. But the dumbest "engineer" I ever met said they had a degree. He was fired after 9 months of uselessness in the job. I am certain his qualifications were fraudulent.

Final point: The model that France uses is best in the world in my opinion, where you have to train to be a technician before you can train to be an engineer. Too many engineers elsewhere without practical knowledge of experience know sweet stuff all about the real world. The worst are those who think they know everything.
 

Offline tpowell1830

  • Frequent Contributor
  • **
  • Posts: 863
  • Country: us
  • Peacefully retired from industry, active in life
Re: Why do "programmers" call themselves... "engineers"?!
« Reply #24 on: November 16, 2019, 03:35:02 pm »
Let me ask this:

> Why do "programmers" get referred to as "coders" in many instances? (that's like calling a poet, a "pen mover" - it very much undermines their profession, and reduces them to the lowest common denominator... I think... I can't articulate what I mean)

> Why do "programmers" refer to themselves as that, when in many cases they have ZERO knowledge of the hardware which is abstracted away from them, 5 layers down at bare metal level, and ALL they know how to do is drag and drop boilerplate templates which call APIs...?

> THE most irksome of all, is the sheer delusion that seems to have swept across Silicon Valley & slowly become accepted, is that "programmers" are... ENGINEERS!  :-//

Please read these articles; the former is well written, and also the latter, but I tend to lean toward the wording of the former, more, not sure why. Bottom line, as I see it, is this:

++ You can't grab a block of binary, sand the rust off it, throw it in a lathe and machine it into a part.

++ You can't expect to call yourself an "engineer" when the fundamental concepts (text) with which you fiddle, all day long, can be (and IS) changed on the whim of some "framework" manager, overnight. Imagine if the mass of a block of lead could be arbitrarily edited to some variable, in a second. Imagine if constants and measurements in physics could be changed to fit some formula, "just because".

I am not annoyed, nor even slightly angered, or in any way fazed by the term "engineer" used to refer to code monkeys, but many others may be, and to be frank, I find it a laughably naive term to use, based on the fact that people hearing you say "I am an engineer" when what you do is fiddle with lines of text, laughable and quite insane.

Yes, I know software CONTROLS things in the physical realm which are engineered, but that doesn't make the software author an engineer. Ever.
Here's the articles:

> https://www.theatlantic.com/technology/archive/2015/11/programmers-should-not-call-themselves-engineers/414271/

> http://nic.ferrier.me.uk/blog/2013_04/you-are-not-an-engineer

One cannot describe an engineer in relation to how many degrees, or type of degrees from an accredited university that a person has.
An engineer is not an island unto themselves, the community of engineers grooms and shapes a budding engineer, not just at first, but forever.
An engineer does not come from the dust, or necessarily from a university, but from a mindset of discipline, knowledge and continued learning.
An engineer MUST approach every task with humility and accept the fact that he/she may have limitations of ability/knowledge.
An engineering team is equally dependent on ALL of its members(even though, sometimes, the bulk of work is done by a few).

These are a few of the aphorisms that I use on a daily basis in doing my job as an engineer.

EDIT: Forgot to say the punch line; Yes, software engineers are engineers if the above are true, especially number 3.
« Last Edit: November 16, 2019, 06:35:59 pm by tpowell1830 »
PEACE===>T
 
The following users thanked this post: I wanted a rude username


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf