In a deep deep moment of introspection ... I think I've realized one of the single most important skills that a developer can possess.
Caching! Not one single development methodology has given me more bang for the buck as caching. It can make a shitty app sing under pressure. Even if you didn't originally code something, and you would have done it differently ... add a little caching into the mix and you are golden.
of course, it's not always as easy as that. Not every situation supports caching ... but if you're building an app from scratch, I highly suggest baking cache right in.