I caught this blog post, The Tyranny of the Urgent, via IEEE. It happen to resonate with some recent reflections on the plus and minus of Continuous Deployment or Continuous Integration. Jim cites “Agile development easily devolves into management by crisis.”
I have observed that being agile and delivering quickly tend to deliver superficial products. Products that are then reworked, and reworked, and reworked. At one extreme, you have waterfall development which results in absolutely detailed plans that are difficult to adjust. At the other extreme, agile has been been taken by some into a gospel of immediate execution. All of the troops get up and charge across the open field. Yes, the objective may be taken but there is often a high body count, a wasteful body count.
Recently I talked to a neuropsychologist who have treated many many battle causalities from Microsoft, Amazon, Google and many start-ups. Unlike the US Marines, with “no man left behind”, causalities are brushed off as “well, they should not be in this business if they cannot handle it”.
Having a career that span a few decades, I have seen several decades where “no man left behind” was the norm, the social contract between company and employees. Employees that were fried or needed R&R, would be shifted to suitable work without any thought about it. Today, firms will show an employee out of the door because they are not up to speed in today’s favor-of-the week. (What, no training of employees?) Today, it’s out-of-the door. In reading comments at GlassDoor.com, it seems that Netflix is likely the worst. A quick Google will find many firms with a 100+% annual turnover rate for developers. When I started working in this industry, a rate of 5% or less was not unusual.
So the question is: Where will this end? How will it end?