Transitioning to the Cloud
What is cloud computing? From the standpoint of the end user it's being able to access programs through an intranet or internet. There’s nothing to install -- just a password to remember. Consumers don't typically give much thought to wear those programs are hosted or how they got there; they just exist out there in the cloud.
Career Cast placed software engineering at the top of the list of hot jobs for 2011
From the standpoint of a software engineer or IT professional, though, it's very different. Just because software is not installed on your computer doesn’t mean it’s not installed. Software still requires a good design and maintenance; someone still has to deploy it.
There are issues that become even more important – and trickier – in a cloud world. Deployment is done on a grand scale. So is resource allocation. There need to be individuals who know how to make multitenant systems work from a business standpoint and how to scale up or scale down.
Software engineers also need to look at the cloud from the standpoint of the end user and consider compatibility. And then there's the issue of security. Many people have their private and business files out there in a vast shared space. Security engineers need to have a grasp of both the technical side and the societal side of issues.
There’s change in many other arenas. New life cycle models are developed to reflect current needs. The life cycle is stretched to include discovery and composition.
New technologies also come into favor as our needs change. Cluster computers – groups of computers that essentially act as one – have their unique technologies.
The Cloud Skill Set
Change can represent something very positive to the aspiring software professional: career opportunity. Career Cast placed software engineering at the top of the list of hot jobs for 2011, citing the need for cloud technologies among the reasons. Dice.com revealed that job postings for cloud increased from 378 to 1,300 between 2009 and 2010.
Cloud computing can be an opportunity for people from many backgrounds, whether they consider themselves software engineers or IT professionals. Success is the result of having the right skill set and a demonstrable willingness to adapt and take on new roles. ITworld cites the following in a list of cloud skills: storage networking, data warehousing, information security, data integrity, and cloud platforms.
If you’re a software professional, you may need to go out of your way a bit more to learn new frameworks and environments than new codes. Hadoop is a popular platform. Employers frequently ask for knowledge of VMWare or Citrix environments. There are many more. It can be a good idea to scout out job ads placed by favorite companies well in advance.
If you’re a developer, you can use many of the same codes to develop cloud applications that you do to develop desktop ones. Java is a popular language. Ads for high performance engineers cite a variety of other coding, scripting, and database languages, among them, C++, Python, Perl, and SQL. If you are working on applications that will be used on mobile devices, it can be good to have a handle on HTML5.
There are some very high level positions for those with the right combination of experience, education, and ambition. Architecture is one. In a cloud world, professionals must focus on large scale application development and integration of systems.
There are several types of cloud architects. Enterprise architects design the environments. Storage and data architects find solutions for storing distributed data.
Developing New Skills
Some professionals will need to learn new skill sets to stay competitive as existing positions are eliminated or altered. Cloud technologies bring with them increased automation and centralization. There will be less need for maintenance at the home office – after all, many of the programs are not hosted there.
Chances are there will still be systems administrators, but their roles will alter. There will be a need for those who are versed in automation and monitoring systems.
There will also be a need for people with a high level of understanding who can serve in expert roles.
Whether you’re an engineer or IT professional, you can use continuing education to keep current. Cisco offers courses in virtualization infrastructure -- this is one concept among many that you may find worth exploring.
Certifications to Keep You Cloud Savvy
There are a lot of certifications that can validate that you’re cloud savvy. Depending on your area of expertise, you might consider becoming a VMWare Virtualization Certified Professional or IBM Certified Solution Advisor. You might pursue the Cloud Security Alliance Certificate of Cloud Security Knowledge or the Open Group IT Architect Certification.
It is possible to do a master’s in software engineering with an emphasis on cloud computing.
Microsoft has several IT certifications that are relevant to the cloud. These include MCPD Windows Azure Developer and MCITP Virtualization Administrator.
Certification is another area where you may want to scout out job ads before investing time and money.
One option for increasing your skill set is to return to school for a master’s degree. It is possible to do a master’s in software engineering with an emphasis on cloud computing or cloud computing and virtualization.