26 October, 2006

Shifting Sands

Sometimes, working between business priorities and engineering priorities is like running through sand dunes. The object of the game is to keep moving in the direction you want to go at the speed you think is safe - sometimes with the sand flowing under you to assist, sometimes going against it; sometimes slowing yourself to go downhill, sometimes going nowhere uphill.
Thus it was yesterday, after a few days of shifting priorities. Last Friday had seen Doodles make an emergency request for functionality; without specifying anything more than "it doesn't work as I promised", it took Monday to work out what he wanted, and I indicated the likelihood that it couldn't be delivered immediately, after talking to Gabriel. A day later, MadDog had made two even more urgent requirements which meant a definite delay for Gabriel's team, which meant that there did appear to be a gap for squeezing in Doodles' requirement. However, by then, he'd come up with another one. He and Arkle had spotted another gaping hole. Actually, it was a known deficiency in the product, whereby we recommend it not be used for that purpose. Obviously neither of these two read the (virtual) warning label.
There was no way that a second requirement from Doodles could also be delivered, and with the urgency of MadDog's requirements, no more delay was conceivable. I was reasonably happy to support Doodles' desires and get a special release done, slotted in after the other three, from a priorities perspective.
After all of the "why does it take so long?" whines, I thought I had it all sewn up and understood. Then FO stepped in and told Gabriel that Doodles could have all he wanted because a delay was possible.
Uh oh.
Seriously? Almost immediately after a meeting I had that confirmed the order of priorities and the necessity of deliveries (agreed between engineering, product management, and customer services), FO thinks he can just break some promises willy-nilly to satisfy others? That makes no sense. Certainly, I had no vested interest in what got delivered when, apart from keeping as many customers happy as possible, but to burn one person's customers for the sake of another's, when there's no priority between them (or possibly the reverse) is suicide.
Fundamentally, it was Polo's problem. He is supposed to be running the factory floor, after all. I had a little chat to him, and discovered that he and I were on the same page in terms of how the priorities should have dictated releases. That means that Gabriel had been backed into a corner and had to agree to too many people's requests. His reaction to the conflict, however, was that MadDog and FO should fight it out, and he'd watch from the sidelines.
This, to say the least, was disappointing. It's not the Polo that I used to know. He may say that he protects Tweet by not allowing people outside of Engineering to make requests on her time, but what about the whole of engineering?

I'm at a loss to work out a go-forward. I'm trapped in a valley between dunes, with sand raining down on all sides, there's a storm brewing, and the glass walls are closing in around me.