1) Auto-encoders are overplayed, mostly because they're a pretty easy intro ML project. There was a brief moment (before ResNets and batch normalization showed up) when they were useful for bootstrapping a representation, but they aren't serving a terribly concrete purpose now that it's so much easier to get end-to-end deeper pipelines running and learning their own representations. The common criticism is that a representation that's great for reconstruction may still not be super useful for classification (or whatever your real goal is). And, compared to 'real' engineering, autoencoders do a pretty crap job at data compression.
2) That said, /variational/ auto-encoders are doing some interesting things. There was a nice paper [pdf: https://arxiv.org/pdf/1612.00410.pdf ] using variational methods to try to take advantage of the (possibly chimerical!) information bottleneck of Tishby. And I think the general idea of being able to have middle-of-the-stack loss may still have some use for helping models generalize; loss based entirely on reconstruction error seems a bit too constrictive, though.