29 Apr, 2002
Remember the manager I had lunch with on the 18th? He's the one who told me to sit tight and be patient. Today, I ran into him in the hall and we talked for a few minutes. One of the things I asked him about was whether my efforts were making any difference. He said that they were, but at a level I can't see. He said it was "aligning the conversation." Come to think of it, I'm not sure what that means.
His statement didn't really make me feel better or worse. I have seen things change, and in the direction I've proposed. They've changed glacially slowly, and only partly in the ways I've suggested. But they're changing. What's less clear is that it's as a result of my efforts. Probably, yeah... I can see that. But the manager may have just been sweet-talking me. He knows I've been unhappy, and he's recently described his job as "talking people off the ledge."
Actually, I'm not sure what that means, either.
1 May, 2002
From conversations with a fewer higher-ups today, I got the strong impression that people think my ideas are not evolutionary enough. They think I'm trying to do too much at once. I had two people today convey basically the same opinion, so I think it's something that's going around.
It's true. I have been advocating fairly significant changes. Maybe it's impatience. I see so many problems that could be fixed if I were just handed the reins of a team and told, "go." (Judging from that sentence, there's probably some hubris to go along with the impatience. Now all I need to be great is a healthy dose of laziness. [Laziness, impatience, and hubris are Larry Wall's Three Virtues of a Perl Programmer.])
On the other hand, it's hard for me to be evolutionary. I've suggested evolutionary changes, and some of them have gotten implemented. For example, on February 5th, I successfully put a very minimalistic agile-ish process in place for development of the framework. Problem is, it was too minimal. There was no coach. People didn't know how to do test-driven development. It didn't work.
Another evolutionary change that I rammed through by sheer force of will is the process for the project I'm currently working on. The project is winding down, so a lot of the process has faded away. That made a difference for me personally, which was nice, but it didn't have any lasting effect on the organization.
Back to my point: evolutionary change is difficult because there's so many interdependencies among agile practices.
I think if I were more patient, I'd be satisfied with evolutionary change. I am making a difference, but it's imperceptibly slow. There's some sort of weird political shit going on. People keep hinting at it: it's gotten to the point where everybody I talk to agrees that my ideas are the way to go, but that even the director doesn't have the ability to make the changes required.
Maybe that's a just a way of getting me to shut up, but if it's true, it's a serious problem. The director isn't doing his job. Okay, okay, that's harsh... I don't understand all the intricacies of the situation, etc. But let me compare this organization to another I know of. At this other organization, the director saw that there were problems with development. He considered it and concluded that agile development was the solution, but he got resistance from executives. He worked at it for a while, but eventually declared, "I'm the director of development. We need to switch if we're to be successful. It's my decision to make, and if you won't let me do my job, I need to step down."
Guess what? That company is now several iterations into an agile development process. The pilot project has expanded into a normal project due to overwhelming success. Everybody is happy.
My current company has an organizational disfunction which is preventing it from making decisions. Everybody, from the director on down, recognizes that there are problems. The director himself told me there were problems the day I got there. Decisive action is needed, but nothing's happening. I don't just mean in terms of agile development -- I mean anything.
People in positions of authority need to stand up and say, "We need to do this, this, and this, or we're going to fail. Trust my judgement and let me do my job, or accept my resignation."
It may be getting close to time for me to do the same thing. Today I was formally put in charge of a small project. It's due in four months (but requires a full waterfall lifecycle), and is the first of seven related projects that require close communication. I'm worried about the risks on these projects. They require close communication, but don't have it. I formally raised the risk this evening. I said, "These projects have a real chance of failure with our current development approach." We talked about the difficulty of making change. I continued, "Failure wouldn't necessarily be a bad thing. It would serve as a wake-up call. The worst thing that could happen is that these projects succeed, but at great personal sacrifice."
Too extreme? Too close to an ultimatum? Maybe. Last time I got in this mood (9 Apr), I wrote my comprehensive process proposal. That document was a failure: too aggressive.
15 Jun, 2006
You can see a lot of frustration and anger in these entries.
At this point, I was finishing my fourth month with the company. That's really not a very long time. But to me, it had seemed like an eternity. I felt like I was beating my head against a brick wall. I had actually succeeded in making a lot of changes... and, simultaneously, none of them had made a difference.
Organizations don't change direction quickly. This organization was particularly slow. Thanks to some hard-working people who are still there, they've continued to move in an agile direction. Now, four years later, they have bullpens, continuous integration, test-driven development, and fixed-length iterations (I think).
That's a huge change from where they were when I worked with them. But it took them four years and their level of practice, from what I know of it, still isn't what I would enjoy.
What's my point? Organizational change is really, really hard and frustrating. If you're setting out to change an organization, it's critical that the positives outweigh the negatives--that you really love working there. If your motivation is "I want to make things even better!" sticking with it will be easier. If your motivation, like mine was, is "I want to fix things," you're probably better off changing organizations the old-fashioned way.
That's what I was about to do. Job possibilities had been picking up throughout the month. I had an offer pending and another one was about to turn up. With two job offers in hand and frustration at an all-time high, it was time for me to go. The next week would be my last.
Next: Week Nineteen