College is about not only learning deliberately but allowing serendipity to open your mind to the unexpected. In my experience, budding engineers are among the last of us to become aware of social costs vs benefits and alternative perspectives. Without a required course to open their eyes, it's likely that many young techies will leap into life's choices before they look.
IMO, college is exactly the right time for all students to confront the cost of living an unexamined life.
Absolutely. But, what if someone's parents, peers, etc have never really introduced the foundational ideas? I mean, most people are taught ethical rules, but they're often taught as rules and not ideology that should be applied broadly. Also, most parents aren't equipped to teach some of the ethical dilemmas that we face with social media and big data. Having a course on some of these things should be another building block for many, but also a backstop for those who have never given it any thought at all.
Ethical behaviour is - or should be - learned and refined over a lifetime, via parents, peers, all levels of education, employers, wider society and one's own contemplation.
I'm suspicious of the inclusion of ethics classes in MBA courses, given the kind of work many MBAs end up doing. I suspect it can create a mindset in which anything you convince yourself is OK according to what you learned in your ethics class is acceptable, which is a very weak and inconsistent standard.
To be clear, I'm fully supportive of the idea that engineers and everyone else in tech companies should behave ethically. I'm just not sure ethics classes will achieve that outcome.
If engineers, or any employees, are behaving unethically, it's because there's a misalignment between the employee's own short-term incentives (i.e., keeping their job, getting a promotion/raise), and societally-beneficial objectives. It'll take more than an ethics class to fix that.