Agile is abused
Agile is one of the essential skills for most software engineers. Even before I entered this industry, many companies were touting their 'advanced' status by using Agile . However, after all these years, is Agile still as efficient?
This post is translated by ChatGPT from original post: here
Advantages of Agile
Indeed, Agile has had its advantages historically. For many web 2 projects, Agile provided unparalleled development efficiency. In this regard, I also agree that Agile has left a significant mark in history and brought an excellent methodology to the software industry.
In an era where capturing market share was crucial, Agile meant faster iterations and more features. In such a scenario, Agile had an unbeatable advantage. After all, being the first to deliver and realize a product from zero to one could indeed give your product a significant edge.
Why I Believe Agile No Longer Holds an Advantage
Nowadays, software may encompass almost everything you can imagine and more. The advantage of moving from zero to one isn’t as significant anymore, as the market has become more segmented and refined. It’s no longer enough to just deliver a product; the software needs to be exceptionally well-made to stand out.
However, when we no longer need to push for rapid iterations and features, the previously advantageous Agile might not be so beneficial. When we need to focus more on the quality and details of the software, down to the smallest pixels, the frequent grooming, retrospectives, and formal stand-ups every 1-2 weeks might not be necessary anymore.
No, we don’t need to be confined to a single methodology. In my view, it’s crucial for each team to have a mindset that is not limited to Agile . If you need to add more features at a particular moment, such as when advancing a new project, Agile is still a good choice.
But when your team enters another scenario, Agile might not be as applicable. Unfortunately, most Engineering Managers do not consider these factors and blindly choose Agile. In the mid-to-late stages of software development, Agile might not be as relied upon. This is a very real yet often overlooked aspect.
When you need to focus on details and managing technical debt, which is likely what most people are doing, Agile may not be necessary. In other words, Agile does not have an absolute advantage in this scenario.
So What Do We Need?
So, in the current state of the software world, what development process is the best?
I can’t give a definitive answer to this question. As an Engineering Manager, I believe it is more important to put the right people in the right positions to do the right things, rather than adhering to a popular methodology. Any method that can maximize the efficiency, passion, and creativity of team members is the mark of a truly good manager.
If, at the same time, you can have your own methodology or the ability to flexibly adapt to various stages of software development, congratulations, you might have found the perfect manager.
Member discussion