Chef is a great tool for provisioning your infrastructure, as well as performing scripted deployments for your applications.
When building a new service that required a lot of configuration, our team decided to use the infrastructure already used at Capital One (both UK and US) and to investigate Chef over a sprint's work. I'll briefly talk about why we chose this over other Configuration Management tools, or leveraging some existing Bash scripts.
As a team who are strong believers of testing first - through TDD - we have spent a lot of time working on fully unit tested code, as well as building levels of quality into our code through reviews, enforced linting and unit tests, as well as verifying the code actually configures a machine as expected.
This talk will have a focus on building up confidence in the system you're deploying your application to, as well as the actual application that's being deployed. You'll also be served with a treat - all the culinary puns you could ever want - wincing not optional!