That being said, as someone with a software engineering degree, I can safely say that most companies don't need engineers and can get by just fine with programmers. Anyway, in this industry there are many architects working as handymen and vice versa.
Probably not, unless they used to actually do construction before becoming an architect.
> Can an architect actually put the pieces together?
Unclear what this means, but architects have plenty of training in doing "manual work". Building models requires a lot more precision than most things in construction.
> Do they know where to source materials?
That's part of their job description.
> Do they understand how to order and schedule the construction of a design?
Definitely part of their job description.
I have about a half-dozen friends as architects in the US, and only 1 of them could do any of the things I mentioned. All have been practising residential and commercial and government architects for > 30 years.
An "engineer" is someone who works in a technical profession with a governing body. Either the State, or an entity that might as well be the State.
An engineer is certified by that governing body, and given a license to practice the profession. An engineer can have their license suspended or rescinded, in the event of professional misconduct or malpractice.
Whether through law, or de facto through insurance company practices, employers face liability if they employ non-licensed engineers. So an engineer is someone who has the leverage to push back against employer pressure to commit malpractice.
Computer programmers / software developers have none of these things. Certifications are a joke, and meaningless beyond the entry level. We are pressured by employers to commit malpractice on a near-daily basis, and call it "tech debt" (management at my current company is pushing the even more euphemistic term "tech improvement opportunities").
Without a governing body and licensing, it is impossible for us to be "engineers" in any real sense of the professional term. With respect to Margaret Hamilton, we can only try to emulate an engineering profession as best we can, by evangelizing professional standards and pushing back on malpractice pressure where we can.
That's a bold statement.
Would you argue, for instance, that someone graduating from MIT EECS[0] or Stanford Engineering[1] isn't qualified to use the tittle of Engineer?
> An engineer is certified by that governing body, and given a license to practice the profession. An engineer can have their license suspended or rescinded, in the event of professional misconduct or malpractice.
I think you are confused with the PE regulations. [2]
[1] https://engineering.stanford.edu/students-academics/academic...
Note that even on your own Stanford and MIT links above, they reserve the term "engineering" for programs OTHER THAN "Computer Science" (e.g. "Chemical Engineering", "Electrical Engineering", etc). Show me a "Software Engineering" program at any accredited university.
There's no confusion, I am 100% talking about PE regulations. One requires a license to practice chemical engineering, electrical engineering, mechanical engineering, all but the most entry-level roles in aerospace engineering, etc. Employers effectively cannot hire non-licensed workers for those positions.
If that does not apply to your job, then you are an "engineer" only in the sense of LinkedIn puffery.
Mind you, this applies to all us (myself included) in the software development field. I'm not trying to be a gatekeeper. Rather, the complete absence of gatekeeping is the entire point here.
0: https://asuonline.asu.edu/online-degree-programs/undergradua...
I agree that the profession of "software engineering" could stand to have much more of the rigor of engineering. For example, it's painfully missing a sense of ethics about large scale surveillance systems. But your argument is biting off way too much.
I'd like to hear some opinions from people who have worked as both "an engineer" and "a software engineer" (maybe OP is such a person, idk) -- what kind of corner-cutting is there in (non-software) engineering fields? Is it at all comparable to tech debt? What kind of compromises in quality/design are made in the service of profit or career advancement? etc.
I think a lot of people end up with an impression that in e.g. civil engineering, everything is perfect and precise and elegant because it has to be (otherwise crumbling infrastructure, accidents, etc.). But understanding that humans in general are always looking to cut corners and be lazy, I wonder how realistic that impression really is... Wouldn't be surprised to hear about comical inefficiencies and poor practices that have become normalized over decades of designing/building physical stuff.
I did, as well as other courses on non-obvious adjacent topics. Not everyone knows the breadth of concerns that engineering brings to solving problems. It’s not as simple as a technical design.
Now, I see plenty of software people who use the same broad set of skills in problem solving, but it’s rare. It’s rare to see software people care about economics. Social impact is also a rare concern. As is governability. As is systemic thinking.
But, there are absolutely software engineers, just not as many as there are people with the title IMHO.
https://ij.org/press-release/oregon-engineer-wins-traffic-li...
The full court opinion (https://ij.org/wp-content/uploads/2017/04/Jarlstorm-opinion....) is a pretty good read if you're bored sometime.