Author Archive: Bradley Johnson

May 5, 2011

Giving Customers More Than They Expect

Giving a customer the ability to do something that they didn't know they could (or even know was possible) can make for an exceptional customer experience.

I've had a season mini-pack of Dallas Mavericks tickets for a handful of years now and have always gotten the exact experience that I expected: The same seats every time, consistent food and drink, great entertainment, and a quality team on the court that wins considerably more often than not.

However, this year it's been a little different. This year, they have thrown in several perks that cost them nothing or next to nothing but have made a huge difference in the overall experience.

One game in particular sticks out in my mind. A couple of weeks before a game against the Wizards, I got an email about a no-cost chance for me and one other person to stand in a high five line to give fives to the players as they came out for warmups. I had no idea fans actually got to do this, so I gladly signed up and took my 5 year-old son to the game. I had also received an invite from the sales rep to choose a date to spend the first half of a game in one of the suites, so I made it the same night.

That night, we joined a small group of people down by the tunnel before the game, and we got to give all the players, Mark Cuban, the Mavs Maniacs and even a few security guards high fives. My son was over-the-moon to "meet" his favorite players - Dirk, Kidd, and Jet - could hardly contain himself.

This game also happened to be the week before the Super Bowl. I only mention it because on the way to our suite, I was blinded by the biggest ring I had ever seen. It turned out to be a Super Bowl ring and the guy wearing it was James Harrison (the linebacker for Steelers that lost a bunch of money to fines for helmet to helmet hits last season), so I got to meet him and wish him luck for the big game.

Oh, and and I can't forget to mention the free hats, shirts, and Roddy B. bobblehead.

Long story short, I probably couldn't tell you who won the other ten games I went to this year, but I don't think I'll forget anything about this particular game.

The thing I took away from this experience is when you give a customer something above and beyond what is expected, however seemingly insignificant, you can monumentally improve their customer experience.

To bring it back around to SoftLayer, we give customers a great API - a REST API at that. We give them VPN, a private network, IPv6, and a fully provisioned server in a couple of hours. Each of these differentiators enables us to provide products and services that our competitors can only hope to imitate.

The first time the customer uses the API to automatically create a new Cloud Instance from their own program, it'll be a Maverick-game experience. When they transfer data from Washington, D.C., to San Jose, CA, on our private network with zero bandwidth charge, they'll feel like they're high-fiving Dirk Nowitski. When they access their server over the free KVM over IP, they're walking up to the suite and meeting a Super Bowl champion. And all of that is on top of a stable, speedy server environment!

What can we do to improve your customer experience?


December 17, 2010

Capacity Planning and the Cloud

Cloud computing is changing the landscape for technology projects and initiatives in many ways, but today I wanted to take a look at how cloud computing can help reduce risks when doing server capacity planning for a project.

Traditionally, server capacity planning has consisted of gathering application/database/processing specs, talking to the business about growth projections, and balancing initial cost vs. future capacity needs. One constant in many projects is that the initial processing needs are smaller than what is predicted for the future. However, there are many times that it doesn’t make sense to buy the full capacity needed to support the long term growth upfront.

Back In 1999, capacity planning was easy: Take your largest growth estimates, multiply by 3, then disregard the results and buy the biggest server you can find. Cost consciousness was not an issue (I remember having to track down several $500k servers because there was no justification or documentation needed to get a P.O. cut), but after 2000-2001, this all changed.

Capacity planning evolved into — and still largely is to this day — the act of balancing the initial project investment with the ability to incrementally scale to meet future growth plans.

There are two basic methodologies for scaling: vertical and horizontal. Vertical scaling is done by adding additional resources (CPU, RAM, hard drives, etc.) into an existing server to handle growth. Horizontal scaling is accomplished by adding more distinct servers to the processing mix. Capacity planning for an app that requires vertical scaling tends to be carry more financial risk and is the focus of this post.

An example of vertical capacity planning: For a project that has 1,000 users in year one with growth projections of reaching 1,000,000 users in three years, a common vertical capacity planning methodology would be to buy a server that has the capacity to handle 1,000,000 users when fully loaded, while initially only configuring the server a minimal base configuration. As the usage grows, you'd pay an incremental cost to add more capacity to the server to support the increased resource demands.

When you use this approach, one of the main decisions comes down to how big you want your server to be when it is fully loaded. While the cost per additional CPUs or RAM is about the same for any given server family, the upfront cost of buying a server with greater scalability is substantially more (i.e. Buying base configuration server scalable to 8 CPUs is more expensive than the base config of a server scalable to 4 CPUs).

To buy this additional potential capacity, you pay a premium. In our above example, if you determined a long term need for a 4-CPU server, you'd be paying a "scalability premium" for the time you don't have 4 CPUs installed. And even then, the success of your strategy will depend on the growth predictions you had and their actual CPU/RAM consumption. Not only would you pay somewhere between 700% and 1600% over the base configuration, you increase your risk exposure if your capacity or growth numbers are off. If your capacity numbers were high or the business did not meet growth projections, you have spent more money than you should have. If you missed low or the product surpassed expectations, you now might have to buy an even bigger server that would make your initial investment obsolete.

The value of cloud computing is that it changes this scenario. Customers don't pay the scalability premium they would run into if they were buying their own servers and hosting them in-house. If you want to start small, you pay for a small cloud server with fewer resources. As you grow, you pay for the additional capacity you need. Another benefit of cloud computing on vertical capacity planning is that there is no prolonged turnaround time for ordering and installing of new capacity. Your server is virtualized, so if you decide you needed 8 more CPUs and 8GB RAM in your cloud instance you can schedule those upgrades with a few clicks.

While these are just a couple of the ways cloud computing can benefit vertical capacity planning and reduce risk, horizontal capacity planning with cloud computing is even easier. Think: Click a button to make a new copy of a cloud computing instance in a hurry ... but maybe that will be in another post.


November 29, 2010

Fun with Lists!

Back when I was doing research for my interview with SoftLayer, one of the things I looked for was financial data. Since SoftLayer isn’t a public company, I couldn’t get financial statements. However, I did find some nice round numbers in a press releases that said they did about $110 million in annual revenue. I thought, hey that’s not bad… Then I kept reading and when I saw that there were 170 employees I became impressed. For those without a calculator handy, at these numbers SoftLayer does about $647,000 in revenue a year per employee.

Because people loves lists, I looked up a few other company’s revenue / employee. These are in no particular industry and have nothing specific in common other than that they were the first to come to my mind.

CompanyRevenue Per Employee
Exxon $3,235,638
Amazon $1,266,667
Google $1,180,832
Toyota $764,216
Microsoft $702,022
SoftLayer $647,059
Nike $563,663
Intel $523,133
AT&T $463,656
American Express $416,295
Dreamworks $335,052
Anheuser-Busch $315,172
New York Times $314,416
Oracle $283,048
IBM $238,541
Rackspace $232,512
Whole Foods $203,256
Walmart $198,410

Does anyone else think gas prices could be lower?

Note: The data for revenue and number of employees was either pulled for public press releases or by looking at the Company Profile (# employees) and Key Statistics (Revenue) on Yahoo! Finance.


November 15, 2010

A New Twist on Communication

I recently heard an interesting story about one step that a CIO took to help improve the communication within his internal team. Now, I’m not sure what the backstory was, but in the various technology teams I’ve been over the years, when organizational discussions turn to topics such as “how can we get better”, “what do we need to improve”, “how do we achieve our goals”, etc, they seem to boil down to a handful of key items. Communication always seems to be on this list and is also frequently listed as the partial (or full) cause of many IT problems that have occurred.

So what did the CIO in question do? He hired an Internal Communications Director for his organization. I don’t work at this company and don’t have the insight into what this person does on a daily basis or the goals for the position, but I would like to speculate on what having a Internal Communications Director might do for an IT organization…

How helpful would it be to technology projects and key initiatives to have someone that specifically focused on:

  • Getting the right information to the right people at the right time (especially cross project) to make more informed decisions
  • Letting everyone know what projects are being worked on and how they affect others so that cross team dependencies have the chance of surfacing earlier in than later.
  • Keep the team informed on recent and upcoming organizational changes (how many times have you found out that Bob or Jane is no longer in charge of a group or is no longer with the company weeks or months after the change)

I know, it just sounds like an upper level project management thing or simple administrative tasks at this point, but the other side of a traditional Communication Director is that they manage external communications, aka Public Relations.

You could have a person helping you sell IT to your internal (and external) customers who is actually trained and has specific experience in this type of work. Maybe they could help you repair a damaged image / perception of your IT shop or keep you from making a LeBron “The Decision” PR mistake. They could also promote your agenda and help you get you message across effectively.

Many of these thing happen organically to some extent in most organizations, but having a person focused on making them happen might dramatically increase the chances of them being more effective. I don’t know if we’ll ever get to the point where we’ve solved the communication problems in IT, but hiring an Internal Communications Director sure seems to be an interesting step…


Subscribe to Author Archive: %