How to Choose a Public Cloud Platform — the Right Questions to Ask
How to Choose a Public Cloud Platform — the Right Questions to Ask
I will speak purely from an engineer's perspective, who are the real builders of software using technologies, e.g. Cloud!
Join the DZone community and get the full member experience.Join For Free
First of all, who I am. I am an engineer, a software architect (not an ivory tower one), a tool builder, thinker, and a huge fan of common sense. And I wanted answers to a few questions that I think many IT and business leaders, technology adoption decision-makers and engineers have.
Unfortunately, many of us don't know what the right questions are to start with. Many of us, unfortunately, get influenced in some way or the other by million-dollar (if not billions) marketing stunts that try to sell "basically bullshit" low-calorie fluff packaged in nice-looking packages.
I intend to present my stories as what I had to deal through, what I heard from the absolute top market leaders in the public cloud space, and what are the questions I think are the right ones to ask while choosing a public cloud platform. So, now let's move on to the good stuff — and I will speak purely from an engineer's perspective, who are the real builders of software using technologies, e.g. Cloud!
Do I Know Why I Need Cloud If at All?
I recently heard a statement from someone high up the corporate ladder(in IT) saying "we got to do cloud, the cloud is everything". When probed why the answer came in — "Arun, you need to update yourself. Don't you know that everybody has adopted it and didn't you see the Gartner hype curve? (Remember Dilbert and the pointy-haired boss — it's real!)". I repeated politely, "Still my question". Pat came to the answer, "please talk to the engineering team". "Okay, I think I know what you mean!" BTW, it was an IT decision-maker I am talking about.
I would think, that unless I understand fully my workload and what type of services those workloads need, and what pain I would be solving by using PaaS or IaaS, I am not ready yet to make a decision — I am just not qualified yet! I also need to know what are my scalability, availability, and reliability needs. If I do not understand these terms, I am not qualified to make my decision — the decision would most likely be a bad one.
I also need to think from the perspective of operations and monitoring, logging, continuous deployment, rolling updates, and painless rollbacks. If I do not understand these terms and don't yet understand as to how far these aspects go towards the total cost of ownership and business agility, I would most probably be digging a grave for myself by doing a wrong decision.
In essence, I must ask all the right questions. The answers are only meaningful if the questions are relevant and contextual — not those questions and fancy terms that the cloud "sales" guys and the "marketing brochures" listed — sometimes they can be very good though. Read the next sections.
What I Need V/S What the Cloud Provider Is Selling?
Do I know what are the top three priorities for my application/system? In the sales pitch, the marketing guy listed two dozen services and took all the contacts from me of my IT decision-makers working with different technologies who are trying to solve different problems. His only goal was sales, sales, and sales. But what about me? Are you even listening to Mr. Sales Guy? This happened to me — and again they are one among the top four providers.
There was another provider, again in the top four, whose sales guy told me this after seeing my demo — "Arun, honestly, you are using a very expensive service of ours and you can very easily meet your application needs by using a far cheaper and far simpler service, go ahead and try that." I said — "God bless you — you are a gentleman". Yet another provider in the top four asked me bluntly, "How tightly coupled my application is with their services?".
Promptly I replied, "errr... actually I am very tightly coupled with your services"... what I did not tell them, was that "STOP looking at me as if I am an idiot, you actually are making a fool of yourself". Yes, this provider is in the top four.
How Mature Is the Service Again?
Is the service I am wanting to use GA or is it that nasty beta/preview which the cloud provider is essentially providing to use me as a guinea pig. Such a provider is gathering very valuable usage data, error log data, crash reports from me (without paying me a single red cent) to improve their product — and they don't give a damn as what pothole you hit by using a beta product — they think they are absolved of all sin by throwing at you some stupid disclaimer which no one reads.
Among the top four public cloud providers, there is one who rarely releases any beta/preview service at all. They release a new service only when they are sure that it meets or exceeds the absolute best standards in the market — and they don't care whether a competitor launches a competing service first or not. They don't care even if they have a ton of features to start with — they just care about that it should "just work" and the documentation is 100 percent updated/correct.
For them, customer obsession is the single most important thing. There is another cloud provider among the top four whose almost every single service starts life as a public beta(of course with the very friendly disclaimer/warning). And personally speaking, sales folks from this provider has actively urged me over and over again in every single call to try out their beta, and sometimes going to the extent of saying that, the feature I am looking for is ONLY available in the beta and that is the recommended technology to use/and the future as of now.
God help me... please take me away. I can't take this anymore..! Do these people know even that I am a living human being with a family who does NOT want to die in office of exhaustion and hunger, and a home to go back to and take the dog for a walk?
What Does It Cost Me — Pricing Model Please?
In the money-making business, ethics sometimes come last and it money honey! For some however ethics and integrity are sacrosanct. One of the top four providers tried their level best (and still do the same with thousands of customers every day) to feed off my ignorance. The pricing model is so smart, that whether I like it or not, a particular "size" of the service only allows "up to a certain max throughput".
Beyond that, I need to switch to the next level manually myself. BTW, the sales guy told me I can do some form of automation to do that switch, for which the documentation was so archaic, obscure and outdated that it felt like it was done on purpose. There is another provider however, who sold one of their services with a pricing model that is simply based on total messages getting into the system. It's charged based on millions of messages.
Everything else and the heavy lifting and auto-scaling is internal to the service. If I needed to a particular max level of throughput in PROD, I just had to raise a simple request and they updated the limits, at the very same pricing model. Remember the service was priced on millions of messages and not the "hardware" tier I was using — BTW there was no such thing even as a hardware tier with these guys. It was just plain and simple without the desire to feed off my ignorance.
Business Model and Business Ethics
One provider among the top four takes an approach of repackaging and rebranding a failed service as a way to hide failures. The sales guy told me. They deal with the poor uptake and the negative feedback by rebranding it — without making any substantial change or even without fully addressing the issues — and oh yes, they are sure to change the UI so that it has no resemblance with the old service — the UI is so cool!
Another provider has rarely needed to kill a service because it was designed with a ten-year roadmap with a lot of thought and foresight put into it. It started years ago, its adoption has only gone north and the feature set just becomes better with every release.
I Am a Human, I Do Mistakes
I am a human, I commit mistakes. treat me like a human, I will thank you for that. I am also a customer, if you want my loyalty, you got to work towards it and NOT just get into a volume licensing agreement done with my pointy-haired boss who does not know jack about what he is buying. There is one among the top four whose only business/sales strategy is to sign a deal with at the topmost levels of the organization, oh wait, actually at the topmost levels of the holding company — actually through links with board members.
If you know about a site called google.com, know what to ask google, have IQ greater than 130, and are interested in your survival, you would be able to find this company I am talking about and you would know they are in the top four. Again there is another in the top four which waived off 16,000 USD when a developer's keys were stolen and a hacker spun up the most expensive VMs in all the regions in which the services were offered.
They just asked me, to convince them that I have everything in place to ensure to mitigate such things in the future. Narrow escape, but they treated me as a human being.
Folks, I think on one hand this world is filled to the brim with unscrupulous day traders all in to make a quick buck. On the other hand, there are the guys who are in here for the long run who's business model is customer obsession — nothing else. Both of these two extremes and everyone in between are doing perfectly legal business and they are entitled to do business the way they want while following regulation in the countries where they sell their services.
None of them is putting a gun to your head to sign the purchase order. It is up to us to ask the right questions, the questions that matter to us, choose the right partners who have the same integrity standards as ours, and make the right decisions — as if our life depends on it. Let's pledge that we will not allow anyone to rip us off even if they are the largest corporations in the world...
Code and build with joy, do the right thing, choose smart, partner with the best, may the best guy win, do your part to weed out bullshit, save money and save time for yourself...
Its time to take the dog for a walk... "Hey come on little buddy... let's go... We got a beautiful world to explore, oh I forgot our face masks, let's put it on :-)"
Published at DZone with permission of Arun Patra . See the original article here.
Opinions expressed by DZone contributors are their own.