The Big Secret

Posted: March 20, 2012 in Uncategorized
Tags: , ,

The Big Secret

If you are an infrastructure professional like myself, your developer colleagues have been keeping a secret from you. I have worked with software development professionals for my entire career. I actually thought some of them were my friends even though we often found ourselves at the opposite side of the table when it came to IT security, access to production systems, and application performance. You know what I am talking about. It can’t be the inefficient coding -  it has to be the lack of memory, CPU, or disk space! I have heard it mentioned on occasion but when I asked about what it meant, they told me it was a software development thing and I wouldn’t understand. So I let it go for a number of years because I trusted them. I am finding out now that my trust was misplaced. I was wrong. I was so wrong!

ag·ile

1: marked by a ready ability to move with quick and easy grace
<an agile dancer>

Sounds great doesn’t it. Why can’t I do agile? Why are software developers the only ones who get the ability to “move with quick and easy grace”? Why can’t infrastructure teams be agile. Heck, why can’t businesses be agile?

So I figured the only way to get agile was to create relationships with developers so that I could learn more about it. But the answer was always the same. It is a software engineering methodology, you can’t implement agile for infrastructure teams.

But somewhere along the line I figured out what the real issue was. Sure, developers had some iterative processes, backlogs, and stories.  But they still thought of it as a software development methodology and not a way of operating a business. Agile is a mindset. And if agile is a mindset than why can’t we implement agile in any business or IT situation. The answer is “You Can”. The key is that you must “Become” agile. You can’t just “Implement” it. Agile is easy to implement but harder to become.

The Agile Manifesto
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

Consider how you can work agile methods into other areas of IT and the business since it really is mindset that can be applied in a variety of situations and processes.

  • Smaller more manageable project chunks
  • Pair team members from various areas of the business
  • Daily or weekly checkpoints. Ask what went well and what needs improvement
  • Start with the most challenging piece of work
  • Make sure the primary stakeholders are very involved
  • Involve agile facilitators

As more and more companies embrace agile software development, it will be interesting to see how they apply those same principles to other areas of the business. The world has seen enough cumbersome processes – it is time to get efficient and innovative in all areas of the business in order to compete in a world that is changing very quickly. Agile may be your ticket to “move with quick and easy grace”!

Why Cloud?

Posted: June 6, 2011 in Weekly Blog

Why Cloud?

I have stated before that the value of cloud computing revolves around getting businesses out of the business of IT. Let’s compare the value of the cloud to an internally procured and delivered IT solution.

Capital Expense
Cloud solutions move the cost to a monthly or annual recurring Operational Expense instead of a Capital Expense. This is beneficial to most companies due to being able to pay as they go instead of utilizing large up-front cash investments. If the business needs change, they can upscale, downscale, or change solutions with little to no cost penalty. Capital expenditures require a large upfront cash investment and you are stuck with the cost even if business needs change.

Ongoing Costs
The cost to procure an Internal IT project is only the beginning. There will be ongoing investments in facilities, power, backups, cooling, and staffing. Cloud solution costs are more predictable and you pay for exactly what you use and nothing more.

Flexibility
Internal IT delivered solutions have to be designed for peak usage which means that most of the time they are under-utilized and sometimes they may need more capacity than what they are capable of. Adding resources for growth can be time consuming and unpredictable. Cloud solutions can scale for peak demands and “give back” resources under low utilization periods.

Provisioning Time
Provisioning time for a server can be several days to several weeks depending on how fast a company’s internal procurement and implementation processes are. Spinning up a server in the cloud can be done in minutes.

Staffing/Skills
The skills required to deploy a cloud solution is usually low when compared to the skills required to build and manage an application in house. For an internal IT solution, you will need system administration and application specific skills. For a cloud solution you can hand it all over to the provider or you may need some migration services.

Reliability
Cloud providers have experienced highly publicized outages but many customers did not have an outage if their solution was properly engineered in the cloud for high availability. A single point of failure in the cloud is just as problematic as a single point of failure in private data centers. However, most cloud solutions are highly automated which reduces the highest failure item in the data center – humans!

Conclusion
It is important to look at all the advantages of public cloud solutions and not just deployment costs. I would even say that public cloud will lose in a lot of TCO models since many companies have not quantified the total costs of maintaining infrastructure, or they will take advantage of sunk costs in data center operations and facilities. However, there are many drivers which make considering cloud solutions as alternatives to internal IT delivered projects, an important part of your company’s strategy.

Is the journey to the Cloud really just another way to outsource?

I keep hearing people say that the cloud is just another road to outsourcing IT. Is it really? Whenever an executive wants to outsource IT, I immediately have to wonder what they are trying to achieve and then analyze if outsourcing will fix their problem.

I find that the following are all legitimate reasons to outsource IT:

  • Cost Reduction
  • Service Improvement
  • Focus on Core Business
  • Rapid access to cutting edge technologies and expertise

While many CIOs focus on cutting costs, I don’t think there are many IT shops left who are bloated enough to actually realize a cost reduction. It may look good enough up front to make the IT leader a star in the eyes of other executives, but the actual ROI probably looks much different as the organization pays for every drink they take off the IT outsourcing Kool-Aid cart.

What outsourcing will do is allow a professional services organization, whose core business is IT, to provide professionally managed services to your company. They will also be able to provide that level of service at a cheaper cost than your IT department can since they can leverage the investment in skills and tools across multiple customers – it is simply a factor of scale. The key is to realize that you may pay more, but you will receive a higher level of consistent service. Of course this will depend on the process maturity level of your IT organization.

What happens in many cases is that the business continues to cut investments in infrastructure and makes it all but impossible to achieve consistent levels of service. Many times IT funding is moved from infrastructure to fund development projects since the crumbling infrastructure is hidden until it all but implodes. The only way out of this cycle is strong IT leadership at the top, or outsourcing. Outsourcing is the easy way out and a good choice if it achieves the objective.

So how does cloud measure up to this?

Here are some legitimate reasons to move to the cloud:

  • Cost reduction
  • Service improvement
  • Focus on core business
  • Easy access from anywhere
  • Rapid access to cutting edge technologies – especially affordable for SMB business sectors
  • Pay by the drink – easy upscale and downscale of services (Flexibility)

As you can see, the two service models look very similar to each other and achieve many of the same objectives.

But my argument is NOT that the cloud is another way to outsource, but that cloud is another way to reduce costs, improve service levels, focus on core business, and to provide access from anywhere to cutting edge solutions for both enterprise and SMB business sectors. Outsourcing for the sake of outsourcing is a no-win proposition. The focus has to be on the business and/or financial objectives that are trying to be realized, followed up with feedback and metrics to measure how effective it was in achieving the objectives.

Business needs and objectives will drive the move to the cloud. The cost reduction will come from the reduction in IT support, infrastructure, and energy costs – not from a pure license comparison, which I continue to see IT departments do when comparing an on-premises solution to a cloud solution.

And how do private clouds fit into this? The end user of a private cloud should realize all the same benefits as mentioned above. In the case of the private cloud, the IT department has used readily available cloud technologies and tools to achieve the same goals as a public cloud in regards to improved service levels, rapid provisioning, and upscale/downscale capabilities.

Whether public or private clouds, the business user wins since the promise of the cloud is to move the spotlight from IT technology and infrastructure to focus on the end user and business objectives.

As Director of IT Systems at Insight, I put a lot of thought into what Service Level Agreements (SLAs) I should offer to internal system users. I finally settled on what IBM Global Services (IGS) offered us when we discussed outsourcing with them since I figured if I could do as well as IGS, then nobody could really present much of an argument with it.

IGS offered a 99.6% uptime (Calculated Monthly) for non-high availability systems and 99.99% for HA systems (Clustered or other HA technology). That is 2 hours and 53 minutes of downtime a month at 99.6%. So the fact that many Cloud service providers only offer three nines, 99.9%, should not really concern most people. 99.9% uptime allows for just 43 minutes per month of downtime and that is only if there is an outage. In most instances, the expectation is that systems are available 100% of the time but the SLA does allow for some outages before credits are given.

Five nines, 99.999% uptime, is the gold standard for the absolute most critical systems and every component has to be engineered for five nines in order to be able to achieve it. It does no good to have servers that are designed for five nines if the network, Internet, load balancers, data centers, etc., are not designed to support it. Five nines is really a target that is seldom achieved.

As more companies try to figure out where “Cloud” fits into their business and IT strategies, SLAs are one of many concerns to be considered along with security, costs, compliance, etc. It is important that SLAs be put in the proper context in the discussion. Many companies won’t even know what their internal SLAs are in comparison. Even if they measure it and achieve 99.99% uptime, it does not mean that their systems are engineered to the percentage of availability that they are achieving. You can achieve 100% uptime on a system engineered for 99.6% if you were lucky and did not experience any hardware or software failures for the period of measurement.

SLAs are just one of many factors that should go into choosing whether to go to the cloud and which provider to utilize. The conversation around cloud SLAs need to be kept in the proper context with potential customers since SLAs should not be the focus of any conversation around cloud offerings unless uptime and availability is absolutely critical to their business operations.

Resources

Uptime Calculator - http://easyuptimecalc.com