supporting hundreds of millions of users (and probably tens of millions of paid users) is non-trivial
While support staff definitely increases with users (paid or not), beyond a certain size the number of engineering staff should be largely independent of user count. As long as you are able to run 24/7 ops, manage outages and incidents, scale appropriately, etc. the only variable should be how rapidly you need to build and maintain your software. The rest of the complexity is all handled via automation.
Not to take anything away from WhatsApp, I'm sure they have a few lessons Dropbox could have learned from (Erlang more robust than Python at scale?), but it's really not a fair comparison.
I am not an expert but I agree with you. Follow up question: why is this not more common? why don't other companies emulate WhatsApp?
There are some opportunities for real innovation, though. An easy one is de-duplication of identical files to save space (which I have tested that they do). However, I suspect it can be taken much further to gain a competitive advantage against other storage providers, such as de-duping blocks, advanced compression algorithms, etc.
And of course, there's always room for creativity in the hardware and data-centers, and UX.