> Agile is more suited toward software maintenance IMO, not building new software.
One other learning that I've taken from big-A Agile is that it is only suited for teams where everybody is a "generalist" within the team. By "generalist" I mean that any developer on the team can work on any issue within that team's purview.
If your team is responsible for any component where only a subset of the team has the specialization to work on it, team-wide sprint planning actually hinders progress.