Thinking Fast and Slow – Daniel Kahneman
A landmark book on the processes of concious and unconcious thought. The lessons it teaches are applicable in daily life in terms of overcoming unconcious bias, the pitfalls of heuristics in assessing situations, and the sharpening of critical thinking skills. It’s a vital read for anyone wanting to truly understand the mindset and psychology of software testing.
The Phoenix Project: A Novel about IT, DevOps and Helping Your Business Win – Gene Kim, Kevin Behr & George Spafford
Pretty much the manual for Agile working practices, with models and methodologies to improve workflow and efficiency presented in the context of a novel to help with readability and flow.
Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation – Jez Humble & Dave Farley
Humble and Farley provide a great foundation for the concepts, processes and mindset required to increase delivery speed, and to achieve the continuous delivery without sacrificing software quality. This book also includes a comprehensive series of practical steps around building, deployment, testing and releasing of software, aimed at putting the concepts into action, improving collaboration between teams, identifying potential hurdles, and mitigating risk.
Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing – Gojko Adzic
A vital work on improving communications between business teams, the various areas of software development, and customers using Specification by Example. The application of the methods described ensures that development teams have clearer requirements, that incorrect or invalid assumptions between teams are highlighted early in the SDLC, and that the software being delivered is truly fit for purpose.
The Goal: A Process of Ongoing Improvement – Eliyahu Goldratt w/ Jeff Cox
Another process manual written in the style of a novel, and I’d recommend reading this AFTER reading The Phoenix Project. The Goal is a classic, seminal work, focussing on the Theory of Constraints, including the elevation and prioritisation of constraints, while also touching on lean development practices, making it an important read for anyone looking to improve efficiency in their workflows. The sequel to The Goal, ‘It’s Not Luck’ by the same authors, is also worth a read.
Explore It!: Reduce Risk and Increase Confidence with Exploratory Testing – Elisabeth Hendrickson
The book that shows that Exploratory Testing isn’t just randomly clicking around and hoping to find stuff, but that it is a highly specialised skill, which is plannable, executable and reportable. A must-read for manual testers, and a great point of reference for those involved in other aspects of software development.
How Google Tests Software – James A. Whittaker, Jason Arbon & Jeff Carollo
Chock-full of advice for all aspects of software testing from arguably the greatest software development company in the world. This book presents scalable techniques for both the practical testing of software, as well as the mindset required to do things properly, this is everything you’d expect out of Google. One caveat is that there’s quite a few word-for-word transcripts of conversations with testers and engineers – so, if genuine, real-world examples and applications of prescribed methods are your thing, you’re in for a treat.