I'm a storage administrator, and I'll be the first to tell you the application knowledge rarely falls down to my level. When it does, half the time it's pure crap. The other half, we can architect something intelligent & I go home feeling good.
That being said:
Being on the other side of that wall, I do get fed up with the "I can just buy a bunch of disk, slap it in a server & call it a disk array" game. The software for redundancy on the level of quality of the crappiest clarrion array with dual SPs is just not there (it will be soon I think). Also, at a large enough scale, putting the slow IO bulk storage on the 'big expensive SAN disk' does make sense, in that you can use capacity on disks that may be near the IO limit but barely touched on capacity. This -CAN- cost less then buying/supporting another subsystem (like netapp). Most large companies have no way to charge you less for the lower IO profile though, as they just kick back the purchase price by GB :-( so you are subsidizing the IO of some IO hog, the company however, isn't spending more money to do this.
The real problems are
1) bean counters who are totally lost, but think they aren't.
2) application & server people who don't understand storage*, but think they do.
3) storage people who don't understand the app, but think they do.
you find the solution to THOSE 3 issues & you can write your own ticket!
(* most times the 'app people', don't even understand the shrink wrapped app they just purchased & the vendor IO profile is a crazy over estimated CYA)