Fui designado para desenvolver uma integração com um dos aplicativos de meu empregador em um sistema externo desenvolvido por nosso cliente. A especificação de nosso cliente para a integração que apresenta algumas falhas flagrantes relacionadas à segurança. As falhas permitiriam que um usuário não autorizado acesse o sistema para visualizar dados restritos.
Eu apontei as falhas e seus possíveis riscos à segurança se elas foram implementadas como projetadas, e forneci uma alternativa sem a falha, mas (em resumo) foram informadas "faça da maneira que especificamos" pelo cliente.
Um programador tem uma responsabilidade ética de NÃO implementar código com riscos de segurança conhecidos? Em que ponto os requisitos de um cliente superam a responsabilidade ética que temos como desenvolvedores de software para criar aplicativos seguros?