|
My question is slightly different. Is it the writing of the software that is ethically at issue, or is it how the software is utilized? Are the scientists that develop new drugs which have potential side affects, even death, murders, are they ethically challenged, morally corrupt? Some people died using their invention, some could have even have been intentionally killed or accidentally killed. Rogue governments could use the drugs to hurt or abuse people. I'd say no, the scientists (like engineers) aren't the problem, they did something that served some valid purpose but their invention (creativity) can be abused or misused. Stingray devices, while I totally disagree with how they are used, I can see that validity for their use for some specific law enforcement cases. The problem to me isn't the technology, but the lack of ethics and morales in the people using them. Lying to the judges about the usage, lying about it's capabilities etc. Hacking Team's surveillance software, having read just a little about it in the past. It appeared again that the software was being used appropriately for a genuine and valid purpose, at least at first. However, then it was sold to people who planned to mis-use it and to people who have a track record of abusing human rights. So is it the software's creation that is the problem or the assholes that sold it to dictators and abusers? A syringe isn't an evil device, it is necessary for the medical community to do its' job, but it is also a device that can be used to kill, commit suicide, overdose on drugs etc. Is the person/people who invented it morally corrupt/ethically challenged, or does their invention just have a potential to be abused? |
You might say that you are not directly responsible and that there are second or third order effects. Or you might even say every man has his own judgement, I cannot be made ethically responsible for his actions with the software I created.
Sure, no you are not responsible, but you were an enabler of his behaviour, you brought that man/company whatever one step closer.
To answer your question, I think you don't need to create separation between the two, they are intertwined. The software would be less likely to have been created if you didn't write it in the first place and you probably wouldn't have written it if someone wasn't going to use it.
So as a software engineer I think it's reasonable to expect to try to understand who is it that you are creating the software for, how are they planning to use it, who is selling it to whom, what kind of people they are etc.