Live data from Hacker News

Programmers should not call themselves engineers (2015)

theatlantic.com

101–110 of 149 posts

Re: Programmers should not call themselves engineers (2015)

#101
I think a lot (not saying all/most) of these comments can be summed up as:

No, Software Engineers are not engineers on a technical level but they do the work of engineers[1] and the fact the industry has not caught up doesn't make what they do any less engineering.

[1] They are using math to solve real world problems that have billions of dollars and in many cases lives depending on them.

For one, I am sick of being called "not an engineer" when I bear more responsibility in dollars and livelihoods and use math more extensively in my job than most mechanical and electrical engineers I graduated with. In college I took all the same courses as the "real engineers"... I'm only a few credits shy of an Electrical Engineering degree. The "technician" majors took different courses. Less calculus, less physics, etc.

Heck, my stuff gets attacked by hackers on a daily basis. Show me something a civil engineer built where they need to worry about the level of security needed to protect against something like that. No one blames the civil engineer because they didn't explosion proof the road.

In fact a lot of the firmware I have seen Electrical Engineers write is terribly insecure and poorly written. Stuff a well trained Software Engineer would feel embarrassed about.

No, we are not legally engineers. But we should be.

Re: Programmers should not call themselves engineers (2015)

#102
post #97

Earlier quoted context omitted.

Pointing out failures in engineering isn't a productive exercise. The difference is that engineers have both professional ethical obligations that they can fall back on and accountability. It is possible that the guy who stamped the sinking skyscraper will lose his license, for example. In technology, the lack of a real engineering culture is a profoundly negative thing in many ways. When your boss demands that you d…

Except, you know, there's the law I could refer to. Or like two months ago when the guy who hired me wanted me to ship software that was clearly going to explode in production and I told him that I'm not interested in having that kind of disaster on my conscience and that he would just have to deal with the fact that its going to take longer to ship. Saying no is about having a spine, not about being able to hide beh…

Ethics can be a tough thing, and it can take more than just a spine to refuse unethical work. Identifying something as being unethical in the first place can be a challenge for someone new to a discipline. Having a professional community that explicitly teaches and tests you about their Code of Ethics gives you a framework and support network to help you with those decisions. It's also kind of a cultural thing. Having transitioned from chemical engineering to artificial intelligence, I'm amazed at the different cultures regarding ethics. Not having an entity responsible for defining the code of ethics in my new discipline, and the lack of community around it, has made it much more difficult to discuss and challenge the ethical decisions we make. Most of the time, when I bring up ethical discussions, my classmates and professors respond with "that's not our responsibility". When I ask whose responsibility it is, the answer is always "someone else's".

Re: Programmers should not call themselves engineers (2015)

#103

I recently visited Berlin to research about the German Freelance Visa [1] after being rejected by multiple local startups that were looking for Software Engineers with +3 years of work experience. I asked for feedback to one of them and was told that I should not consider myself an "engineer" because I don't have an university degree in the field, even with +9 years of work experience. I asked more people about the t…

Sounds harsh, but knowing that Germans tend to be direct I wouldn't read too much into it. Also depends on the role. Universities teach programming from an angle which optimizes computation time over human time, even though that's rarely what industrial programming is about. For example, just recently I asked my professor can I reuse code which would achieve the required behavior in one line over creating a completely new approach. The professor asked me why would I want to do it inefficiently. I asked isnt it efficient to do it in one line rather than reimplementing the functionality. He said that you are technically wrong, but proceeded to show me how to do it nonetheless.

In addition, the programming languages used to teach things are old. We are still given examples in Fortran and C is taught on freshman courses.

The academic world is vastly different. For that reason, if I would personally apply for a software engineer role which is about web application development and I would be said that I need a degree for that, it would raise a red flag for me.

Re: Programmers should not call themselves engineers (2015)

#104

Earlier quoted context omitted.

Engineers are people who build and operate engines. I'm not sure how it became otherwise.

That might be for the English term. On romance languages, ingeniero/ingegnere/ingénieur is based on the "ingenio" root, so an engineer is someone who uses their wit to build/solve something.

I am indeed referring to the Anglo-Norman etymology.

http://www.oed.com/view/Entry/62225

Re: Programmers should not call themselves engineers (2015)

#106

Earlier quoted context omitted.

Software Engineering is recognized as Engineering both by IEEE and by Professional Engineers of Ontario (or other provinces) who are members of Engineers Canada. Certification does exist....it's not widely used or accepted because in most cases, companies want developers not engineers. To add to it, the only thing stopping Software Engineers from becoming members of the above mentioned organizations is a code of ethi…

> Certification does exist....it's not widely used or accepted That's an understatement. Was speaking to a fellow engineer recently, and he claimed that there are really only two licensed software engineers in all of Toronto. We probably have tens of thousands of software developers.

The only place where I've seen the certification as a requirement is govt jobs (and UfT I believe).

Apart from those two, I've yet to find even a reference for it (let alone a requirement) - which is a cycle because one of the requirements of being a PEO is 12 months of work experience under a PEO (which won't happen as there aren't enough PEOs - the chicken and egg problem).

Re: Programmers should not call themselves engineers (2015)

#107
post #30

I call myself a Software Engineer specifically because I see it as different to being a programmer. I don't just write code, I try to solve problems in a rigorous and maintainable way, while being aware of the wider implications of my work to the business, our customers, and anyone else who might be affected by it. Sure we don't have the same regulation as civil engineers, but I try to do my work in the same spirit.…

This misses the point that all other types of engineering are regulated and licensed.

If you take a look at the definition of engineer, nowhere does it say that you must have a license.

Re: Programmers should not call themselves engineers (2015)

#110
Of course programmers are not engineers. Nor are space shuttles controlled by software, nor nuclear missiles, x-ray machines, planes, drones or self driving cars. Nope that's all pure engineering. Zero software. And of course engineering is only about bridges and public safety and Chernobyl didn't fail because of a flawed reactor design, nor did the Fukushima disaster happen because of regulatory capture.
Post reply on HN