My experience of Agile is it's all unnecessary and often unrealistic deadlines, just one every two weeks. It's often brutal and soul-crushing, because people take the sprint plan like a contract and then when you inevitably miss it (because it's only a commitment the developers and in some rare cases QA are held to, not anyone upstream), you have egg on your face. Enough layers of egg, and there are real consequences, like firing.
This leads to developers slamming in code any old how just to call it "done." If the next developer can't build on your crap, well, you look golden because you're done and they get the egg.