The OP isn't an engineer, but this really highlights the difference between real engineers and software developers who like to pretend they're engineering.
If the OP was an engineer, the answer would be lose their license and never work again in the field.
This sort of snobbery is pretty silly. Do you think engineers didn't exist throughout all of history until someone decided to start handing out pieces of paper?
Writing a piece of code after a bootcamp isn’t engineering, and being the technical guy will not make you an engineer either, for starters, you learn engineering ethics in the engineering disciplines, and he (or she) would know what to do in that situation. What OP pulled will rarely ever happen in civil/electrical engineering because they can report that and revoke the company license.
In 2023, if you call yourself a "car doctor" or "software doctor" nobody will bat an eye. If you call yourself a doctor in a way that implies that you have a medical license, people will get upset. If you call yourself an engineer in a way that implies that you have a relevant license, people will similarly be upset.
The OP squabbling about someone calling themselves a "software engineer" is just being silly. Where it matters in the US, the term "professional engineer" exists for exactly this distinction.
So your argument is that a software developer can use the term software engineer because no reasonable person would assume that they actually are an engineer?
Sigh, no. There's many types of engineers, and if you imply that you're a type of engineer you're not, people will get upset. Stop looking for "gotchas", especially ones that demonstrate a lack of reading comprehension.
Without throwing around insults that are out of place on HN, I think the GP's position is fairly straightforward, at least as I understand it.
Software developers have a tendency to call themselves "engineers" based loosely on what they do (software engineering, or at least development) rather than based on them holding an engineering degree and/or professional designation. I'm neither a software dev nor an engineer, and I initially found it confusing when I'd come to a forum like this and see people say "I'm a software engineer" or "I work as a software engineer for X" without actually having any of the aforementioned credentials.
In contrast, I don't think people are so blase about using the term "engineer" casually in other contexts, or even other areas of engineering. Folks calling themselves mechanical engineers, or electrical engineers...actually are engineers. As for the example you gave of a "car doctor", it is evident that people might use the term "doctor" in such a way as to show they're not actually doctors, which is not the case in the present context. I don't see mechanics referring to themselves as just doctors, or describing what they do with cars as medicine.
The OP is only saying that if he had the piece of paper, he would know that the piece of paper would almost automatically be retracted as soon as he acted like this.
And, no, this sort of thing didn't exist before the pieces of paper, for obvious reasons.
Yeah sorry, it's silly. Use the term "licensed engineer" or something. Don't come up with new definitions for words and then get offended when people point out that you're being silly.
In North America at least, the term is Professional Engineer. PEs are generally licensed in a way similar to doctors and lawyers. At one point there was a push to professionalize software engineers, but it never got very far.
Feel free to call yourself a software engineer (or even a software doctor). The titles aren’t controlled and as a result don’t really mean anything.
I believe that in Canada, and certainly in Alberta, the titles are very much controlled. The regulatory group APEGA has a Professional Engineer designation for software engineers as well
Context matters. Even in Alberta, the term “software engineer” doesn’t mean anything. Last time I looked into this, Quebec was trying the hardest to control usage and they actually took Microsoft to court for their MCSE title.
Another example: the University of Alberta has a software engineering program.
Search on Canadian job sites and you will find hundreds of software engineering jobs across Canada (including Alberta).
Other examples of non-PE engineers include stationary engineer (people who operate boilers) and locomotive engineer (people who operate trains). They may have their own regulations, but it is entirely distinct from Professional Engineers.
It's a bit complicated. In Oregon, for example, someone was fined $500 in 2015 for referring to themselves an engineer; although they had an engineering degree, they were not a licensed professional engineer. The state law was invalidated in 2018.
I think you don't understand what you just quoted. But yes, you should introspect about why you're being silly about trying to redefine a word and then getting offended over it.
What difference would it make? Any "real engineer" (of whatever you definition you might have of that) will also find themselves being in a shitty position in this situation, which is somewhere between getting fired, voluntarily leaving, living with ethic concerns, being a whistleblower, or finding a compromise that isn't great but maybe acceptable for them.
FWIW, I would consider myself a "real engineer" (because that's exactly the title that was granted to me by my university and country. And there's nothing I ever could have done to become a "more real engineer"). And I could see myself exactly in the same situation if I worked for a bad company. In that case I would have no idea how my title would help me.
Real engineers accept the moral and ethical responsibilities associated with the title, and accept the consequences of failing to do so.
The concrete difference is evident in this post and these comments. A real engineer, including a real software engineer, would understand their responsibilities and the question in the OP would be moot.
> In that case I would have no idea how my title would help me.
Well, yes, because for you (unlike the majority of the world) engineer is just a title.
Exactly. The situation in the the article would not have happened if the OP had the ethical foundation that comes with actual Engineering education and training. He would have simply refused to lie because 1. Lying is wrong and 2. It would put his future employability in question.
This chucklehead lied and is now panicking, pointing fingers and making excuses. A single class in Ethics could have prevented this.
Of course they're not an engineer. They're writing software, not feeding and managing a boiler hurtling down the tracks. Not sure you need a license to do that either.
Yeah unfortunately you can chalk this up to the early 90s obsession with libertarianism and anti-regulation. Establishing strong regulatory bodies would be and continues to be antithetical to the Silicon Valley Ayn Randian obsessed cult of free marketers.
Regulatory bodies in the past were setup ultimately by government legislation (though typically run arms-length or fully independently thereafter), and until government starts actually taking these things seriously no software developer will ever be an "engineer" unless there are actual licensing and standards by authoritative bodies.
If the OP was an engineer, the answer would be lose their license and never work again in the field.