1You are coding image recognition for 'surveillance drones.' You find comments in the code referencing 'payload delivery' and 'kill confirmation,' implying lethal autonomous weapons. You are a pacifist. Quitting means losing your visa. Do you continue? Justify based on Virtue Ethics and Voluntary Participation.
An engineer should refuse to continue because Virtue Ethics prioritizes integrity and respect for human life.
By voluntary participation, continuing work knowingly contributes to harm and implies consent.
Therefore, even with personal cost, ethical integrity requires refusal.
2Marketing asks you to implement a 'Dark Pattern' UI that tricks users into uploading their contact lists by making the 'Skip' button nearly invisible. They argue it's technically legal because the button exists. Do you implement it? Justify based on ACM/IEEE codes regarding privacy and deception.
An engineer should not implement the dark pattern because ACM requires honesty and avoidance of harm.
IEEE also requires engineers to protect public welfare, including user privacy, not merely follow what is legal.
Therefore, deceptive design must be rejected.
3To meet a deadline, you used a Copyleft/GPL open-source library. Your manager orders you to obfuscate the code to hide this because releasing your proprietary source code (as required by the license) would ruin the business model. He claims 'Everyone does it.' What do you do? Justify based on IP rights and Professional Integrity.
An engineer should refuse to hide GPL usage because IP rights must be respected.
Professional integrity requires honesty and lawful conduct, not deception justified by common practice.
Therefore, the engineer must comply with the license or change the library.
4You work for a cybersecurity firm protecting corporate networks. A freelance client asks you to test the security of a vendor. You realize this vendor is a client of your full-time employer, and you have privileged inside knowledge of their systems. Do you accept the freelance job? Justify based on Conflicts of Interest.
An engineer should decline the freelance job because it creates a conflict of interest.
Using privileged knowledge violates fairness, trust, and professional responsibility.
Therefore, the job must be refused to maintain ethical independence.
5You find that steel grades for a new stadium are slightly below safety standards for 'extreme' weather but fine for average days. Management dismisses your concerns to avoid delays, citing low probability of hurricanes. Do you blow the whistle to external regulators? Justify using De George or Davis criteria.
An engineer should blow the whistle because the risk involves serious public harm.
Management ignored internal concerns, and the danger outweighs personal or corporate inconvenience.
Therefore, external reporting is ethically justified.
6You develop a logistics AI that saves fuel (reducing emissions) by 20%. However, it consistently routes heavy trucks through low-income residential neighborhoods, statistically increasing accident risks for children there by 5%. The client insists on the update for cost savings. Do you release it? Justify based on Public Safety and Fairness.
An engineer should not release the update because public safety and fairness must be prioritized.
Reducing emissions does not justify shifting higher risk onto vulnerable communities.
Therefore, the system must be redesigned before release.
7You are at a medical startup. Investors will pull funding if you don't launch a heart-monitor device next month. The device has 5% false positives (causing panic) but 0% false negatives (catches all heart attacks). Your CEO argues launching now saves lives immediately. Do you sign off? Justify based on 'Coder vs Engineer' liability and Honesty.
An engineer should not sign off yet because engineers are legally and ethically liable for outcomes.
Honesty requires clearly addressing false positives that can cause harm, not rushing deployment.
Therefore, delaying to improve safety is the responsible choice.
8You are a software engineer maintaining a legacy banking system. You discover a 'logic bomb' code left by a former employee that siphons small amounts of money. Removing it immediately risks a 48-hour system outage preventing customers from buying food/medicine. Leaving it means theft continues. Do you patch immediately or delay 3 months for a maintenance window? Justify based on ethical frameworks.
An engineer should delay removal until a safe maintenance window because utilitarian ethics minimize total harm.
Immediate removal harms many users’ access to essentials, while short delay limits damage.
Therefore, controlled delay with safeguards is the ethical action.
9You are designing a load-shedding algorithm for the power grid. You must choose priority: A) An industrial zone that supports the economy for millions, or B) A rural hospital with unreliable backup generators. A Utilitarian algorithm cuts the hospital. A Deontological one cuts the industry. Which logic do you code? Justify.
An engineer should code the Deontological logic and protect the hospital because human life has a moral priority over economic benefit.
Under deontology, engineers have a duty to protect essential services like hospitals regardless of outcomes.
Therefore, cutting industry power instead of risking patient lives is the ethically correct decision.