a typical technology organization is 100:10:1. When Infosec is that outnumbered, without automation and integrating information security into the daily work of Dev and Ops, Infosec can only do compliance checking, which is the opposite of security engineering—and besides, it also makes everyone hate us. - Gene Kim, posted on dzone.com 1
variable: 7 Javascript: process.env.JEST_WORKER_ID !== undefined Python: if "PYTEST_CURRENT_TEST" in os.environ: Or are detectable in other ways: for (StackTraceElement element : Thread.currentThread().getStackTrace()) { if (element.getClassName().startsWith("org.junit."))
automate everything Automate updates to • Schema changes • Environment variables • Configuration settings • OS package requirements If you don't do it for your teammate, it probably won't happen in their development environment. 8
good tools for managing DB schemas. Forward and Reverse migrations allow you to safely roll back. Automated schema management lets you jump version and coordinate with multiple developers. 11
log or what log levels to use? • Any teams using feature flags regularly? • What tools do you use for security monitoring and scanning? • Can you share anything that really helped your team make DevSecOps work? • How do you manage DB schema changes? 23
hidden time sink! Best case for a manual deployment (per iteration): • About 2 hours per deployment • 1 or 2 test deployments • 1 stage deployments • 1 production deployment 25
a manual deployment (per iteration): • About 2 hours per deployment • 3+ test deployments • 2+ debugging sessions • 2+ ad-hoc meetings with devs to fix deployment issues • 1 stage deployments per iteration • 1 production deployment per iteration 26