Advocacy is totally central to my role, and it's just as vital at my level as it is at a core level. Maybe more so, as if I'm not able to advocate effectively across the VPs of Engineering then it's going to make it harder for anyone else to advocate within their teams. I work in a central team now, so I have more of a remit to work with the VPs across the business, but even so I have no authority so getting the right message framed in the right way is key.
I'm a big believer in metrics as indicators of health and as a way to demonstrate the impact of quality engineering on the things that matter most - customers. And I don't like to reinvent the wheel so DORA metrics are a big part of how I approach these conversations. Nobody wants a high change failure rate, or a long lead time for change, but what I need to do is demonstrate how investing in quality can improve these.
A lot of times this is about breaking misconceptions - and lead time for change is a good example of this. There is default assumption that testing takes time, and you can't have both, so introducing more testing practices is going to slow us down and increase our lead time for change, right? Not for me. If we make things testable, we will spend less time testing. If we shift testing left and invest more in unit and contract, we will spend less time passing builds back and forth when they break, and less time blocking or blocked by dependencies. I can use data both internally and from the industry that proves this.
At the same time, risk is a big factor. I will never advocate for testing everything, all of the time. Failures are normal and being able to observe, detect, and fix quickly are another important part of testability. And I think this flexibility helps show we're on the same page - I don't want to slow you down, and I don't want to cause customer problems, but there is a way we can manage this effectively.