I actually finished the Unicorn Project a couple weeks ago and didn’t take great notes on it, so this won’t be as extensive of a review as I often provide. I did enjoy the book, and like it’s predecessor (the Pheonix Project) it does a great job of showing how some of the best processes in the industry can come to life in a specific company. It does a beautiful job covering both the DevOps revolution at the team level with containerized dev environments, versioned APIs, and everything else required to decouple deploys, automate test, and implement CI/CD. It also touches on the transformations necessary to abstract your mainframe/legacy environment and the evolution of management thinking around experimenting with parts of your org while gaining efficiencies in others.
My only real critique is that it’s not very realistic. It demonstrates how powerful these concepts CAN be by taking an ideal company. The ficticious company in the book has a CIO who understands the need to empower engineers and keep the vision high-level (rather than command and control), a great agile coach, an operations team that wants to put in the extra work required to give control to the developers, and a development team that is excited about experimentation… not something I often see in clients. It also glosses over things that I’ve seen very difficult. At one point it takes a development team over three weeks of hard work to put together an automated test suite for their application that includes (presumably) either mocks or test instances of upstream and downstream systems. They’re right to call this hard work, but I’ve rarely seen developers tackle it in a few weeks, even on a backend system without a UI.
The best use of this book is to give it to a CIO or CTO who struggles with what success looks like in their organization. If you still have someone who’s trying to count server consolidation ratios or incident tickets, give them this book.