CIO has an article about what changes may occur and the skills required to be a technically effective in the cloud computing domain.
I summarized the key points below:
- Application Developers - learn new APIs, Non-relational DBs
- Systems Administrators - less about running server, more about running environment
- Architects - Bring together knowledge of cloud computing, enterprise architecture, storage, networking and virtualization
- Capacity Planners - shorter forecast, quicker turnaround
- Vendor Managers - Different cost models, contracts impact pricing
The gaping hole they overlooked is the "applications administrator" type role. This the squishy layer between infrastructure maintained by traditional systems administrators, but not really managed by programmers and developers. The role has emerged as applications administrator or middleware applications support. The boundaries vary depending on the IT shop, skillset, management preferences, etc, but the role exists.
Looking forward to the cloud this role will likely expand. The ability to understand the complexities of interfaces, platforms, transactions, and data design within cloud systems will be a valuable skill to have.
Another omission from the article is security skills for the cloud. Study after study details the caution of moving to the cloud due to security concerns. Understanding penetration, vulnerabilities, and appropriate defenses is critical to designing and maintain cloud systems.
Finally, the cloud may be one of the more accessible technologies to learn. The characteristics of accessibility and elasticity of the cloud lend themselves to training as well. As mentioned in the article, a great way to learn about the cloud is find a cloud provider (AMZ, Rackspace, Eucalyptus, etc) and fire up some cloud systems. Practice scripting, management, turning, and support on these systems at a relatively low cost (free in some cases).