First, most software developers are taught "computer science" (or an imitation of it) in their formal education, not engineering.
Second, software is mostly not engineering. Engineering is very measurable. But software includes a lot of design and craftsmanship. If software dev. were restricted only to the portion that could reasonably be called pure engineering it would be a very, very small subset of mostly systems code. Indeed, a good hunk of software dev. could properly be called merely arts and crafts, under such a strict interpretation.
I think this explains some of the religious wars, because the debates are more aesthetic such as "do you prefer charcoal or pencil" than engineering "which is better steel or aluminum", because purely engineering questions tend to have very much more straightforward answers.
My opinion is that "Software Engineering" is an artisan trade. What it isn't is based on science. What is rigorous is usually based around theoretical mathematics.
Let me put it like this: there are very very few designs in software where there are limitations that are based on intrinsics. Whereas if you talk with a chemist, it's very clear that there are actual properties underlying what they do, and these physical properties do things like go "bang" when you screw up. Or if you're building a circuit, you use the underlying equations of the resistors and other components to drive the design. Very little of that exists in computer science.
This doesn't make what we do immoral or bad or demeaning. But in my opinion, this conflation with physcial-based sciences produces a confusion of the mind.
I'm prone to consider computer science "algorithmic mathematics" and quality software engineering "software craftsmanship". It reminds me far more of house building than circuit design.
First, most software developers are taught "computer science" (or an imitation of it) in their formal education, not engineering.
Second, software is mostly not engineering. Engineering is very measurable. But software includes a lot of design and craftsmanship. If software dev. were restricted only to the portion that could reasonably be called pure engineering it would be a very, very small subset of mostly systems code. Indeed, a good hunk of software dev. could properly be called merely arts and crafts, under such a strict interpretation.
I think this explains some of the religious wars, because the debates are more aesthetic such as "do you prefer charcoal or pencil" than engineering "which is better steel or aluminum", because purely engineering questions tend to have very much more straightforward answers.