The opportunity is...
...cost. Yes, you can run your own servers in your own data center, with your own SAN and fiber channel and etc. And yes, if hardware capital costs were the biggest cost, putting infrastructure on the cloud would make no sense.
But then comes downtime. Yes, we can buy a SAN array with redundant controllers and redundant power supplies. Will never go down, except for when it does; either because you have to have a maintenance window to update the firmware, or because you didn't and it goes down because that firmware fixes a flaw in the fiber channel controller (not imaginary, I assure you). Does your company go out and buy a redundant SAN array for the SAN array that wasn't supposed to go down? Do you rent another cage at your co-lo to put it in? What about geographic redundancy?
When your capital depreciation is done, do you always go out and upgrade your servers? Do you update your routers and switches? Or do you keep what you have because it's "good enough" and throw more money at developers to try and pare down their SQL statements and bloated apps to keep performance acceptable?
Big enough companies can spend their way through these problems without the help of Amazon or Microsoft. If you are under a billion dollar company though, good luck on convincing your leadership (or the board) that spending the money to have redundancy and performance is worth it. Until stuff goes down, and you get to update your resume. Downtime has a cost too, it just doesn't get consistently measured.
Having worked at companies with on-premise (actually co-lo) and cloud, I will take cloud all the time. Yes, there is the occasional horror story like the AWS S3 failures, but it happens far, far less frequently (especially if you stay out of us-east-1) than the outages when you are the guy taking the 2 am call. And there are far, far more tools to build resiliency and redundancy than a lot of companies are willing to pay for to build in-house.
Security is more work, but there are improvements in at-rest encryption, encrypted VPNs etc. that mitigate a lot of the pain. Engineering is still quite important, I spend less time reading HP and DELL service bulletins and more time working on orchestrating and automating deployments, backups, etc.
One other thing too, it's far cheaper to experiment and decommission resources in the cloud. Want to stand up a large Hadoop cluster, experiment with it, and then shut it down because it didn't work out? Unless you are lucky enough to work at a company with lots of spare capacity racked up, this is much easier to do in the cloud than if you are having to try and explain why you want to take an early write-down on infrastructure that didn't quite work out.