I tweeted something the other day that go a few people tweeting back and I wanted to clear up my thoughts on the subject; my tweet was:
“Do people abuse the term #agile when they probably mean something different? Is it just a Job Spec / Tender buzz word? ‘We’re an Agile Team’”
The reason I tweeted this was that I see a tweet from a Development Companies CEO looking for an “agile developer”. Knowing people who work for said company I know they aren’t being agile, but are trying to do agile. Which is why I asked, has it become a buzz word, by people who don’t really get it’s meaning in the true sense. The word has become so abused in the software industry that people are starting to dismiss anyone who says they are agile.
What am I trying to get at, I believe there are two groups of companies in the larger agile term.
- Those who are doing agile
- Those who are being agile
Although the two sound very similar, I believe that the biggest difference is culture.
The companies / teams in the first group who say they are doing agile seem to be the ones who have read the principles of agile like the look of the agile manifesto and start to take the parts of scrum for example that they like (They may also take parts from XP and other agile methods and processes) They introduce Daily Standup’s, as a start then try to introduce sprints and other parts of the Scrum process. After sometime they find that these don’t work for them and they give up on Agile. Some may even send people on the Scrum Master course and have them help introduce the process, this will work in someways but will always have flaws in my opinion. They would be better off getting in an agile coach to help the whole team, and share their experiences.
You’ll find that this group will have standup’s that take over 15 minutes and give no real benefit to the process. Part of the process that I feel normally gets missed here is the retrospective, this is where the process and agile implementation can improve quickly and over time. When these companies say they are looking for “agile developers” they are hoping that these guys will just make there process agile, rather then empower them to help make the required changes.
The second group are the ones where agile really works for them, they get it, they understand it and they embrace it as a whole. The culture of the company / team is right for agile, they are open to changing requirements and the whole cadence of development sprints and releases. Their standup meetings takes 15 minutes or less, and are extremely informative and keep everyones attention as to where they are in the process. They may even have a dedicated agile coach(es) they help the team as a whole not just a Scrum Master to remove the impediments to the project but to help the team understand the different parts of agile, some very suttle like TDD, Pair Programming, Sprint Planning & Estimation etc.
If like me you work in a large enterprise and the whole company / department aren’t doing agile (or lean on my case) but your team is then you have to understand the hand off to these other teams, and as much as you try to help other close teams become agile they may not see the real true benefit of it especially if they are a smaller team. You need to work out the best way to interact with these teams so that it doesn’t become a bottle neck for your own agile / lean process.
To clarify I don’t want to confuse people with the terms Agile & Lean they are in my opinion very similar but also very different; I’ll cover this in another posting.
To summaries my thoughts, if the culture isn’t right for agile it’s either not going to work at all or will not work to full capacity. If you can get the right culture, like startups Agile and Lean will work as you’ll have full buy in from the outset. My team were very lucky as we started as a small number of developers 1 Managers and 2 Developers and an Analyst who just got Agile got it’s benefits and were able to implement and change the process as we went. When things didn’t work we changed them and yes I did the Scrum Master courses and now we’re doing Kanban (Lean) which for our teams works better and we are move productive, again because the team just got it.