OTOH, I'm skeptical those courses change behavior, and in this particular case others in comments are saying this is a common architecture in the space, so how could anyone solve this ethical conundrum if getting to the base level of whether this is an ethical conundrum to begin with is difficult?
In that environment, serious ethical concerns could easily be brushed aside as "coders just being coders". When Google got found out for making drones, the employees of a company staged a 5 minute walkout.... that was it, I'm sure some people quit, but not enough to make any impact
>marketing themselves as "COOL TO WORK FOR"/"WE HAVE BEER ON FRIDAYS",
"the idea that you are small and need management to tell you exactly what to do everyday, because you're a dumb idiot who spends all day watching anime and playing video games" does not follow.
Note that the UofI has always been in the top ten nationally for CS; its 2020 rank is #6 (behind MIT, CMU, UCBerkeley, Georgia Inst. of Tech, and Stanford).
1: 2005: https://web.archive.org/web/20050321215749/http://courses.ui...
2: 2019: https://cs.illinois.edu/academics/undergraduate/degree-progr...
I liked my ethics course in the philosophy department, but that's more about J.S. Mill, and Kant and the rest. Engineering ethics was a course any Eng. degree had to take, interesting, but hard to apply also. You go through case studies and look at them, but to have any productive class discussion they kinda have to be broken down to be at least somewhat clear and concise.
I don't feel like getting into here, but I feel like even this Boeing issue, which is pretty clear, is less clear than any case study in a textbook.
Its also my understanding that most do.
BTW: SE typically means Software Engineering in this context.
Computer Scientists aren't usually taught engineering ethics and definitely get fired all the time for arbitrary reasons.