Gene Kim, George Spafford, and Kevin Behr: The Phoenix Project - Review

Photo by Blaz Photo on Unsplash

Gene Kim, George Spafford, and Kevin Behr: The Phoenix Project - Review

Coming from a non-traditional IT background, a self-taught route without the foundation of learning in IT and systems administration, the majority of this book and the plethora of technical jargon may be lost on you. I think the target audience is technical professionals with a computer science degree or those who have experienced the trials and tribulations of working on large enterprise projects, and multi-disciplinary teams before the advent of development operations.

The authors and the crux of this book advocate that any business, large or small, if they sell software or a platform as a service, or simply use IT systems to facilitate the offering of products and services, must implement principles of DevOps if they wish to remain competitive in their markets. The book goes into great detail about a dysfunctional organisation across management levels and teams that was stuck in an old way of integrating IT solutions to support the business goals.

It took great endeavour from internal staff and support from outside consultancy to view IT services as a conventional production line process. Then, they identified how to improve the workflow (automation and management planning techniques) and change the staff work culture to deliver products and services faster with fewer errors.

It's worth reading the markdown readme in the link below which summarises the key learning points which you could internalise or use for your organisation:

https://github.com/keyvanakbary/learning-notes/blob/master/books/the-phoenix-project.md

I suppose the question that comes to my mind is, for all the benefits of DevOps and how important IT is to a modern organisation, shouldn't we all be implementing it and reaping the rewards?

I think whether any organisation should consider DevOps depends on many conditions and really isn't for every business:

  • Is the IT division (developers, systems admin etc.) in the company doing a job as a means to an end or is it directly involved in profit-making? i.e. is IT central to the business goal? If the work of the IT team could be outsourced, subcontracted etc. would the firm be better off long-term but faced with an upfront cost? I appreciate that if a company relied on IT to perform their logistics, stock management, and communications and sold software to businesses or the public, then yes integrating your development and operations teams would be beneficial. However, for many small to medium businesses that just need an online presence to manage a small customer base and post static information on a website, DevOps seems overkill here.

  • A major part of the DevOps movement is retraining staff to follow a new work culture described in the book. This requires buy-in from employees across the board and without financial compensation or other means of improving individual job prospects, what's the incentive for say, junior staff to adopt this rapid, flexible, high-intensity work practice when really they may just be concerned with gaining experience to jump ship for a quick salary increase? This is especially the case in some industries like IT where turnover is high, existing staff can be cynical and jaded. Businesses are trapped in the recruitment cycle of hiring junior staff deemed to have potential, training them and the same staff leaving a year or two later, to join a competitor for a higher salary. How can you maintain the DevOps culture meanwhile, blocking the proverbial revolving door?

  • You need investment from higher management to implement a drastic technical and professional management shift like this. Again, for small and medium businesses, this is hard to come by and dependent on the company's long-term goals, and the personality of their staff and to echo the first bullet point- about how integral IT is to the firm. If all IT systems packed up tomorrow, what would be the short and long-term impacts on the organisation? Would it cease to operate, lose its customer base and go out of business immediately? Or would it be a major headache, but teams could find temporary workarounds or even outsource parts of the IT tasks to contractors?