Docker, Cloud, Kubernetes, Serverless deployment, autoscaling, and improvements to server virtualisation initiation all mean that a new program can be setup in days rather than weeks, that code can be pushed to production in hours rather than days and in many cases that the automation of many of these tasks means testing, operations, and security checks are already incorporated into the process.
Table of Contents
- Partial Decision Makers
- Requirement Gathering is slow
- T Shaped Experts
- Simple does not Equal Cheap
- Cultural and Task Disparity Across Organizations
- Governance Perception
- Who ‘owns’ this work?
- Communication is Key
- Over Engineering of Automation
- Infrastructure still exists
- Upgrade Acceleration
- Debugging takes time
Projects have greatly improved the time in which they can develop and release features and products, greater flexibility is possible through better working methods and product improvements and the skill required to develop, build, deploy and test code is decreasing as complexity is abstracted from users.
But projects continue to fail for a number of reasons including poor communication, an over reliance on expertise abstraction, poor cooperation with other teams and a lack of contextualisation of how projects and teams fit into wider business goals.
These issues can become overwhelming when not understood and exacerbated when ignored. But by having a knowledge of what might lead to problems in a project and knowing the warning signs teams can work to resolve the issues before or as they start to occur.