Last year, we were working on building a brand new product, on a brand new cloud, using brand new technology. It was a huge learning curve for everyone involved, and due to the speed we were building at there were some walls to help keep us focused.
Our Dev team requested a pipeline as they were losing a lot of time doing manual deploys, and even more if the deploy went wrong. We had experience building pipelines for other teams and other companies, but still took some time to refresh on best practices and what other companies were doing. We spent a lot of time discussing, whiteboarding and building but we made 1 big mistake. We didn’t actually dig into what the Devs wanted from us. So we built what we thought was the best solution for their problem given our knowledge at the time and some opinionated decisions regarding best practices.
It worked, sometimes. In some scenarios. But in others, turned out to be a huge headache. They wanted to deploy in a way we hadn’t anticipated or built for. This led to a lot of tension and frustration, as well as productivity lost. It could have been avoided if we had just gotten together and discussed openly what each side wanted out of this tool.