These are just my two cents about what I feel is wrong with Agile development. Consider this as a developer perspective.
- more talking less working – many of Agile trainers would probably disagree with me claiming that if done right you should actually do more. But that’s just a theory and it never works like this in practice. There is simply too many meetings about every single stupid aspect of the product even such an obvious thing like changing a text from displaying “Hello” to “Hi”. Such a thing would take 1 second to implement but with the meeting it may take even days.
- too many useless roles in team – let’s say you are a developer. Doing Agile your team structure looks like 3 developers, 1 dev/tech lead, 1 scrum master, 2 product engineers, 1 tester, 1 test lead, 1 UAT person, 1 product owner. That’s eleven people and lest be honest only 5 (devs and tester) of them are actually doing something on the final product. Others are just talking about all kinds of stuff and coming up with great ideas about making your life miserable. There you have six people that can be fired or given a more useful work. In my opinion you don’t need any product engineers, test lead, UAT even a product owner all this roles can be done by one person or spread between the developers.
- turning developers into a regular worker with a shovel – with all these guys around that are responsible for coming up with “great ideas” and “innovations” there is not much space left for a poor developer to be creative. I remember the good old times without Agile when the team structure was 5 people with 4 developers and one guy in charge of everything else. We were able to be as creative as we’d like and the end product was a hell of a success. Developer is not a monkey able to type code for the whole day. We love to be creative. We can as well take a look at the product from a user perspective and think about what might be the best solution for some issues. But again some of the Agile trainers would not agree. Because there are meetings where we can discuss our ideas. The fact is that in most cases the developer is too tired of explaining how stuff work to so many people all the time or simply we are so overloaded that we don’t have time to talk about something. And even if our idea is good some guy will simply reject it because he don’t understand it or he thinks that if he take it and change it a bit they can claim it for their bidding. I keep finding my self in situations when I think I have a good idea but when I think about what’s needed and how many people do I need to persuade that’s it’s the best think we can do or how long it will take I’ll just forget it and let it be.
I think that we developers are the most important people in the company but it seems that some managers don’t get it. They just don’t listen to us they are talking to wrong people if they think that we are OK with this.