Late last year I picked up a copy of The Nature of Software Development and did a review here. It was a nice reminder of what agile is, or at least was at one point in time, really about. Getting bits of software to customers faster than we currently are. Some books make me feel re energized and help to generate lots of ideas, this was one of them. So, like the good employee I was, I brought some of those idea back to work. Some is an understatement, it was more of a shotgun blast.
Nothing really stuck. Most suggestions were flatly ignored, and a few were given a mostly fake attempt.
For a while I thought that my delivery was the problem, and that was probably part of it.
The big mistake was not taking politics into account.
Up to recently, I’ve been a political ostrich. When I got a sense that people were focusing on something other than software development, working their way though people to get something in their interest, I’d just dive deeper into the work. This seems to be a pretty common thing, I’ve heard plenty of people say that they try to ignore politics as much as possible and happily encourage others to do the same.
The reality though is that politics are all around us, it’s like air. It is completely inescapable and it doesn’t have to be as bad as I have always thought either.
It is pretty easy to see the nasty side where people are just working on their own self interest. Being aware of how things work will help get work done though.
What I’d Do Different
I don’t think I would immediately go and present ideas next time I’m in this situation. There is more going on than how fast out group is currently moving and how fast I think we can go with this or that tweak.
There are a few things to think about first. If my manager agrees that the idea or plan is good, and she goes through with it and what we end up with is a complete disaster — things get super slow, or we have a bad release, or whatever. In that case, I certainly will be responsible for that problem to some degree. But the manager, the person making these decisions will be even more so. My idea lead to trouble.
The other possible scenario is that things work, everything goes just great. We release ahead of time and the customers are happy. Who is responsible for the success? Is it the manager who said yes to the new thing, or the person that brought the new idea, or the group of people that executed on it. Management taking credit would be a borderline lie, and management giving credit for something they haven’t been able to do.
So in my case I wanted to try out a feature team rather than the pretty traditional front end / back end / test group split. A group of people sitting side by side working on a feature till it was done. Probably with a lot of pairing, and probably with a lot of bugs getting fixed before they hit the tracking system. What we got was people that called themselves a feature team and just sat where they normally sat and worked how they normally worked. It was so sad I had to laugh.
People couldn’t move and desks couldn’t be rearranged for various reasons.
I didn’t see the underlying politics of this weirdness till later.
So, next time, I’ll probably pick one specific thing and think out how it can be executed on by the team. But also selling it as a success for the person that gets to make the decision.
Now, if you have one of those servant leaders, they type that focus more on facilitating work than directing and leading, you may not have to worry about this specific type of worry. Either way though, learning how to navigate organizational politics, in a positive way, will help you out in the long run.