Working in Canada where my degree was not certified, all the PEng people would get seriously uptight if I even said "I studied Engineering" or "I have a bachelor of Engineering".
Working in Canada where my degree was not certified, all the PEng people would get seriously uptight if I even said "I studied Engineering" or "I have a bachelor of Engineering".
If they have an engineering conference in Canada, and a notable engineering expert comes from abroad to speak but isn't from a Canadian certified school (perhaps they're from a British one instead) do they get uptight about that as well?
At some point they must accept that non-Canadian-certified people can be engineers as well?
Found a link about it: http://m.spiegel.de/international/germany/title-fight-us-aca...
By whom? Canadian software engineers, other types of Canadian engineers, or by some professional engineering body that's trying to protect their profession?
In Canada engineer is like lawyer. You can specialize in a certain part of law (e.g. patent, corporate, criminal). just like you specialize in certain fields (e.g. aerospace, mechanical, geomagnetic, biomed). What matters in both cases is being given a license.
Why would this be the defining characteristic of engineering?
As a Canadian engineering graduate myself, I don't think that's true. Saying you studied engineering is fine, that's literally what the degree is. Calling yourself an engineer is a different story, and that requires more work. It's like calling yourself a doctor without a doctorate. Notice how I didn't call myself an engineer, and that's because I didn't get my PEng.
I did a little Googling and in Ontario there are exceptions for flight engineer, train engineer, sound engineer, aircraft maintenance engineer, operating engineer, stationary engineer, and hoisting engineer.
I studied engineering in Germany. There's no such thing as a PEng in Germany -- the only thing is that the title of Dipl.-Ing. (equivalent to MEng), which was the culmination of my studies, is protected.
How does it make you feel for me to claim I'm an engineer?
(BTW, I get seriously uptight at all the web designers who like to call themselves engineers :-) )
I feel similarly to you, but would extend it to cover most software development, period. With feet in multiple traditional engineering disciplines, I don't see the majority of software development as coming close to the bar of engineering (though some certainly does). And I don't mean that in the sense of licensure, nor am I merely trying to be snooty. But to hear the software world co-opt "engineering" to mean "technical work" is grating.
For example: one can't be certain that someone with a Computer Science degree even knows how to program or has any other specific knowledge or skills. Or that someone supposedly with X years of experience with Y understands Y at all vs. just repeating tasks learned by rote. Or that someone who went to a Z bootcamp can actually do anything useful with/in Z. Maybe someday we'll get there, but it's still a long ways off.
No, it's not about a "bonus" because it's physical. erikpukinskis [1] and blihp [2] captured essential reasons for the differences in their comments, and I did so in my response to yc-krain [3]. I mean this in no way condescendingly, but if the bulk of one's technical experience is all in software with no deep exposure to the engineering lifecycle in the physical realm, it could be hard to grok the underlying theme of rigor that these comments get at.
[1] https://news.ycombinator.com/item?id=18801168
You can boil engineering down (maybe a bit much, but bear with me) to: plan, execute, measure, adjust. The difference between software /programming/ and software /engineering/ is that programming often stops after execute, and hands measure to someone else maybe, whereas a software engineer is constantly measuring what they are doing and trying to understand why it may be deviating from plan, and how to make it better in the future.
To wit, you don't need software engineers to build you a web application, but you had better have them working on your file system.
A civil engineer is not credentialed because they took physics and DiffEq. They are that because their field has defined a body of knowledge and rigor that has been shown to adequately protect the public within a narrow band of services.
I am not aware of any such effort anywhere in software, which is why many engineers consider the whole notion of “software engineering” to be a farce.
The Rust Evangelism Strikeforce is working hard to change that.
Q: Are there many software engineers who build poor-quality roads in their spare time?
I'm not making a point about degrees and coursework covered per se, more so about the practice of the profession. Of course, education prepares one for practice, so they are very linked.
I think the practice of computer engineering straddles the line more between engineering and craftsmanship than does say typical software development which is largely (though as I noted before, not entirely) in the craftsmanship camp. For what it's worth, I have a Computer Engineering degree as well.
> You can boil engineering down (maybe a bit much, but bear with me) to: plan, execute, measure, adjust.
I get your gist, but it misses some essential elements. Engineering is about understanding your objectives/requirements/constraints well and ensuring that what you implement satisfies those while being correct/sound. Of course, there is almost inevitably a circular dependence between the understanding of objectives/requirements/constraints and correct implementation.
If soundness is trumped by other considerations, e.g., "development velocity", developer availability, convenience of tooling, etc., I would say you are not practicing engineering. It's not that most software development sets out to implement bugs or design flaws, it's that there's an irreconcilable difference between the mindset that treats their elimination or preclusion as a first-order consideration and lets the development approach fall out accordingly, vs. choosing a development approach and then trying to weed out soundness issues after implementation. The heated arguments in favor of continuing to develop mass-deployed or high-stakes systems in languages like C or C++, or weakly-typed languages shows the strong bent of the software development world toward craftsmanship over engineering. It's one thing when those are the only tools available; it's another thing when there are viable options that force more correctness yet people can't get over how unencumbered they feel when they go the unsafe route.
I recognize these statements probably offend, but my point is not to troll with a polemic. It's to say that software is a new technical vista compared to traditional engineering disciplines. It provides a kind of power and speed of system implementation radically unavailable in the physical realm. Our ability to construct software systems far outstrips the allotted time, and often until recently the ability, to reason about them.
This is definitely changing, and the work going into enabling soundness-by-construction through tools accessible to any competent developer is worthy of innumerable plaudits. I think we are heading toward most software development as engineering, but we are far from it today. The daily news of "hacked" systems and the never-ending stream of "system security updates" is proof.
I think you could argue they might be engaged in other forms of non-recognized engineering (like process engineering), but I agree that software is not what they're engineering.
In some countries most medical doctors don't have any kind of doctoral degree. In the UK for example doctors have a bachelor's degree.
I find it slightly annoying too. However, my degrees are in engineering and it makes sense to me that the engineer term is reserved.
It would annoy me if someone without any engineering education or experience tried to pass themselves off as an engineer in a way that exaggerated their competence, but if a guy from Iran with 20 years solid experience as an engineer who hasn't yet jumped through the excessively many hoops to obtain a PEng in Canada wants to write "engineer" in his email signature, that's fine with me. It's the term that best represents his competencies. The only limitation is that he won't be able to take responsibility for plans or designs without an actual license.