Is creating face recognition software unethical? Your answer is not really important, just the fact that different people will classify this differently. I thought it was creepy as f* when facebook started wanting to automatically tag people in photos. But if that's all the tech was for it may well be ethical, if creepy to some. And yet, face recognition is really all that was used in this case - matching up porn images with social media ones.
But I was thinking more at FAANG for example. They could be required to hire “certified ethical” engineers at least on sensitive projects at first. This means that even if the code is out there no coder would implement it in the company’s solution without risking losing the “certification” and the job. Anyone working for the Hacking Team (those guys selling exploits to oppressive governments) should be more or less unhireable especially if all code in a company’s portfolio should be traceable to a specific engineer.
The principle is already in place for other fields. Journalism being the closest probably. It could be made more effective if needed. It’s obvious that something is needed in this direction.
That said, a lot of engineers actually are in the position to make demands. The chances of getting fired for saying "I'm not going to do that because it's wrong" are probably very low. Most managers would rather not feel bad, and hiring someone new is usually touted as being a pain in the ass.
There may be some very good reasons that I haven’t thought of not to support this ethics idea. But putting food on the table shouldn’t be it because this one reason applies to any activity that could ever put food on the table, no matter how illegal, immoral, etc.