Tuesday, August 23, 2011

Why so many fail when trying to move to the cloud?


First of all, I am talking from anecdotal experience working mostly with the Mexican IT scene, but it’s not restricted to it, I have observed the same behavior on some US companies.

The last months I have been working with companies helping them move to SaaS taking advantage of the Cloud, my colleague at Scio consulting, Mike Dunham has written a series of posts “The Cloud, SaaS and the Total Costs of Operations” you can found here: part 1, part 2 and part 3 . This is a developer's point of view.

Microsoft and AWS in a lesser extent, both have information about their products, and how to use them, but one thing that is missing , there are no papers encouraging  developers to change their mind set to develop applications that take advantage of the cloud in terms of business benefits. We, the developers have to start getting more involved in the business side of our companies so we are aware of the challenges, the objectives and the market, how can we design and develop and application that takes our company to  business success if we are not aware of  those “boring” things?

Other thing that I have found, is that, as scrum is invading the startup scene and as companies are being dazzled by the scrum shine, the “fail” line grows faster. Don't get me wrong scrum has its place, but I won't use it for all the projects and I won't use it with all the people. I will use it on projects with people that already know and like each other.

Many architects and developers design and code the application the same way for on premise and cloud environments.  Most of those applications will fail when they need to scale because of their success and the only option to is to scale them up. To run efficiently in the cloud, many apps require changes and rewrites of some parts to run on a web farm.  How can architects and developers design and code for success if scrum and a big picture awareness can't live together?

So what is the solution? It is easy to say we need to design and develop for business success, but not as easy to implement. We have to learn and remember to design and develop applications to scale automatically on demand (elastic), always develop with operations in mind and remember that today ignorance and laziness is tomorrow's nightmare.

1 comment:

  1. I agree that developers also need to be thinking about the benefits and value the Cloud brings to their companies & their customers. Everyone must be outward facing (ie: on their customers’ success) … too often the mentality focuses on the minutia and not the bigger picture.

    The benefits for moving to the Cloud far outweigh the “wait and see” mentality. The Cloud offers companies larger market penetration (ie: lower cost of entry for customer & new markets) and a more predictable business model. There is great customer demand for The Cloud as companies lack IT resources to manage yet another application infrastructure – no more customizations that carry costly services engagements with The Cloud. There is a bright Cloud future as the majority of software companies are adopting a Cloud model.

    Additionally, your customers benefit and derive great value from your company’s Cloud offering. They have lower start-up costs (a pay as you grow model) that keeps their investment proportional to their return. Your customers will get Faster-Time-to-Value (and thank you for it!) for the instant access to features & innovation immediately upon release. And, finally, your customers will experience a lower total cost of ownership by having built-in “expert” infrastructure operations management and monitoring.

    I could go on and on and talk about things like scale and performance and reduced risk associated with the Cloud … but the bottom line is everyone – including developers – must focus on the business value the Cloud and their applications bring to their customers.

    Point your developers to this developer community site to get started: http://developer.axeda.com/

    ReplyDelete