Developers provide an insightful window into the challenges that come with virtualization. They're not the same as IT, and those differences highlight some important issues to consider when figuring out how business critical applications are deployed in a virtualized environment. Why? Aligning developers and IT is critical to the success of any application that is moving into a virtualized world.
Developers arguably are the most dynamic users of virtualization technology. In part this is due to the advent of Agile development processes. Satisfying the customer is at the heart of the Agile methodology. That means a few things:
- The customer is always the top priority: Software or Web-based services go through constant iterations to assure that the customer is getting the highest quality product.
- Change is part of the game: The process is fully flexible so changes can be made quickly. Testing is done constantly.
- The process is improved all the time: The Agile methodology process is reviewed continuously to better its efficiencies.
It's a different world for IT: Requests are received. It takes a week to process. And then it's another week before the request gets implemented. In comparison, developer teams do daily updates. They do not like to wait. IT just has different realities than developers. But the difference can lead to some problems.
Developers have been know to cobble together machines to do testing. Once they do that it's not long before virtual machines are installed. Physical sprawl turns into virtual machine sprawl. Now you've got a problem.
The answer? Developers are often working on business critical apps. IT has to be part of the process. Otherwise, version control, backup and sprawl become larger concerns than the virtualization.
A logical option is to create a virtualized infrastructure for both developers and IT - their own private infrastructure.
Give developers some autonomy. Provide the infrastructure so they may manage it themselves. The upside? Developers won't be tempted to start rogue projects. Instead, work will be secure with a level of trust and common focus.
Business critical apps will be transformed by virtualization. Making sure developers and IT communicate properly can make all the difference and provide a model the rest of the organization can follow.
Photo Credit: Michael Cote on Flickr.