1. Always code with a Least Privilege Philosophy
  2. Never create a single shared set of credentials that will be used by many things/people
  3. Implement security at all layers
  4. Always code defensively, assuming that what you’ve received is malformed
  5. Reuse code where possible
  6. Write code that is easy to troubleshoot in production should something not work as intended.
  7. Make your logs useful, available, and secure
  8. Always assume the service your code consumes will go down or be unavailable
  9. Always encrypt secrets
  10. Always use existing authentication schemes to authenticate our foxes
  11. Never create production private keys yourself
  12. If you have concerns with how to do something securely, ask your peers, communities of practice, security, SREs, etc.