Esther Schindler writes "Whatever you think about cloud computing — whether it's the same-old-same-old or a revolution — there's certainly some wheat among the chaff. If you're going to expend any energy writing software for the cloud (SaaS, IaaS, or RandomLetterAsAService) it make sense to understand how it's different from "regular" web development. Programming for Cloud Computing: What's Different goes into some detail about the technical issues. Some are sort-of-obvious, such as designing for scalability; others, such as architectural concerns... not so much.
One theme that came up repeatedly that developers should expect to learn more about cloud computing platforms, virtualization, infrastructure operating environment, and other knowledge traditionally left to network specialists. A lot more. In fact, it may be spawning a new category of developer: DevOp. ""The lines between developers, deployers, and IT people is blurred, and roles and knowledge are shared between all roles," says Guy Naor, Morphlabs, in the article."