I had to take Computer Ethics as part of my degree, but it didn't really anticipate the sort of problems that software engineers run into today. It mostly focused on Therac-25 and integer overflows. Indeed, letting your integer overflow kill a bunch of people is horrifying and is something we should avoid. But we have a much wider reach than people thought at the time. Software is pervasive throughout society and touches every area of life: food delivery and banking are among the examples listed in this thread, and were never touched on in any class I took.
Software didn't create the gig economy or the microloan economy, but as engineers, we had the opportunity to step up and say "hmm, this doesn't seem right, I don't think we should do that". We didn't.
AI is a whole 'nother can of worms. I watched a lot of my friends deactivate social media over the holiday as their pictures got posted to Twitter and got live AI edited by Grok into things that horrify them. You probably wouldn't have gotten an A in Computer Ethics if you said "yeah, we should publicly show women nude pictures of themselves if someone asks in the comments section", but here we are.
It's not great. As a field, we have been remiss in our duty to society.
IMO: historically engineers have had a little bit more leverage to negotiate, so IF they did not think something was right to do, they MIGHT have pushed back. So the likelyhood of wanting to do bad things might be the same, but the agency was a bit higher in terms of the Employer/Employee relationship.
I hear what you’re saying, there are definitely just amoral engineers who truly don’t care. I think the plurality though (and this goes for all disciplines, not just engineering) will start to feel queasy if the impact is too clear and visible. Those people need to stay with the program, as there aren’t enough purely amoral engineers/marketers/PMs/etc to keep the ship afloat alone.
One reason we might assume "engineers" tend to operate with better ethical frameworks is that (in Australia at least) you generally have to register for accreditation via a large organisation like Engineers Australia, IChemE, etc, to actually practice professionally. These organisations have standard codes of ethics that, if breached, can result in your removal and an inability to continue professional practice.
Naturally, software engineering has none of this, and in most cases explicitly doesn't want it.
It’s not a special class, but teams of engineers tend to spook together and are more likely to discuss topics “uncomfortable” to the employer (but not to unionise, apparently). If the degradation of fellow humans is too on the nose for the engineers, they will make noise and move.
Why do we think engineers are some special class of people who can't do bad things?