In 2002, Jeff Bezos, CEO of Amazon, issued a now-famous company-wide mandate to his entire IT organization… a sort of digital 10 commandments for the 21st century (okay, Bezos really only gave FIVE commandments, but hey! It’s the 21st century, things move faster now!)
- All teams will henceforth expose their data and functionality through service interfaces.
- Teams must communicate with each other through these interfaces.
- There will be no other form of inter-process communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
- It doesn’t matter what technology they use.
- All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
Bezos ended his now famous mandate with a chilling little twist:
- “Anyone who doesn’t do this will be fired. Thank you; have a nice day!”
I have no doubt Bezos’ little atom bomb of a mandate ruffled a lot of feathers and made lots of waves throughout his entire organization. What the heck got under his skin, to get him so riled and fired up to issue this kind of mandate in the first place?
And more importantly, what was Bezos’ endgame behind his mandate?
In a nutshell, Bezos wanted to transform his company from his original company vision, which was to be a digital mail-order bookseller, into a global PAAS (Platform as a Service) powerhouse.
It certainly wasn’t an overnight transformation and no doubt there were tons of mistakes and painful lessons made along the way, but there shouldn’t be any doubt about the successful outcome of Bezos’s mandate.
It’s easy to be confused about what Amazon does these days. All you hear about in the mainstream media is how they’ve become THE global e-commerce powerhouse of the internet age.
In July, Amazon announced the purchase of Whole Foods, an upscale grocery chain, for a massive $13.4 billion dollars.
Not only are they dominating the e-commerce, internet space, they’re now moving into the brick and mortar commerce sector. I’m sure executives at Walmart and other traditional brick and mortar superstore chains are sweating bullets these days, trying to figure out strategies to counter Amazon’s global commerce ambitions, on and off the internet.
And make no mistake, Amazon is making GOBS of annual revenue. According to their financial statements for 2016, they ended declaring $135.99 billion dollars of revenue.
But if you remember anything from your economics courses in high school or college, REVENUE is only one half of the equation.
The real important number is REVENUE – OPERATING EXPENSES = $NET PROFIT.
Amazon’s total net income profit for that same fiscal year of 2016, ended up being 2.73 billion dollars.
That’s not a lot of net operating profit compared to the gross revenue.
But this is nothing surprising…since Amazon’s inception, they have always operated on razor-thin profits margins.
They operate on massive sales volume so that they sell products at or near cost, or even at a loss, much the way Walmart uses “door buster” sales to get people in the store on massively reduced priced products in hopes they’ll purchase other items in the store to make up for these “loss leaders”.
It’s part of the reason why they need to rake in such massive gross sales revenues. They also have massive infrastructure costs in their order fulfillment process … shipping, warehouse and personnel costs, and all the other operational costs required to ship items all around the world.
Bezos also massively reinvests their gross revenue into new markets, in a never-ending pursuit to dominate every consumer market on the planet.
Now there’s nothing wrong with this business model. Many other businesses like Walmart and McDonalds, operate on the same big volume/small profit model as well.
But it sure is hard to make a buck that way, isn’t it?
Companies like Apple operate on the lower market share/fat profit margin model. They only go for the top end of any market, and in doing so, know they can charge premium prices for their products….their computers, their iPads, their iPods, their iPhones, you name it, rarely ever dominate the market share of a given market, but there’s always enough consumers willing and eager to pay the extra “Apple Tax” to get premium products.
AWS and the Value of Data
Most of you have heard of AWS, short for Amazon Web Services. It’s basically a huge cloud storage infrastructure they sell to other companies and organization who wish to offload the huge task of storing their enterprise data in a massively scalable and 24/7 available system.
AWS also has many other value-added services that help organizations analyze and mine their data. Amazon, over the years, have become absolute masters at data analytics, which isn’t really surprising when you consider how much customer and sales data flows through their fingertips, every time something gets bought or sold on Amazon.
And make no mistake, many companies are flocking to AWS. And it’s helping Amazon get out of the high volume/razor thin profit margins they’ve had to rely on for many years.
In fact, AWS is continuing to grow more profitable with each year. And let’s be clear, it’s NET PROFIT, not gross revenue. This is exactly what investors have been waiting for the longest time from Amazon … real actual net profits.
I have no doubt that the profitable success of AWS would have never have been possible without Jeff Bezos’ infamous mandate.
Bezos knows the value of data. Data is the new gold rush of the twenty-first century.Data is the new gold rush of the twenty-first century. Click To Tweet
Think about the value of the data that Amazon processes every second whenever a customer purchases or sells something on Amazon.
The regional location of the customer. The frequency they purchase things on a daily, weekly, monthly and yearly basis.
Their shopping habits and patterns. What brands of products they prefer.
This kind of information is absolutely PRICELESS in the world of commerce.
But it’s been my experience that enterprise often gets entangled and hard to find in many organizations.
There can be interdepartmental fighting between different teams and departments, in which case one department may feel like hoarding the data and business they’re in charge of.
Other times, it can be just plain ignorance of what other teams and groups within an organization do. And because of this, you end up with an organization with many silos that know nothing about each other.
This kind of jumbled and incoherent enterprise system does nobody any good. And sadly, this is a common landscape for many IT organizations. Believe me, I’ve worked at a pretty wide variety of public and private sector organizations, and I can attest to this.
Jeff Bezos knew the value of the data flowing through his enterprise.
But in order to make any sense out of that data, and make it easier to query and retrieve, he knew he’d have to transform his organization in a way to make that happen.
And thus his famous mandate was born. He essentially wanted to transform his company into a Services Oriented Architecture, or SOA for short.
Let’s examine each of the mandates one by one:
“All teams will henceforth expose their data and functionality through service interfaces.”
You can think of a service interface, much like an official interstate highway or freeway between two points.
Sure, there might be back roads or trails between the two points, but the official way to get from point A to point B, is through the official highway.
Which brings us to Bezos’s next two mandates.
“Teams must communicate with each other through these interfaces.”
“There will be no other form of inter-process communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.”
This gets rid of any official, backdoor ways of getting to a particular set of data or application.
Why is this important?
When everyone agrees to use officially sanctioned service interfaces, you eliminate redundancies and duplication in your enterprise system.
When there is only one sanctioned way to get to a particular data lake or application, you reduce the complexity of your overall system. It also becomes much easier to find something in your enterprise system, when there is only one sanctioned service interface that will get you to your destination.
“It doesn’t matter what technology they use.”
You can build out service interfaces in a wide variety of programming languages and technical stacks. As Bezos said, it really shouldn’t matter HOW you develop the interface.
The only important thing is the interface is publicly accessible by other service endpoints and/or consumers of the service.
“All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.”
This is probably the most important of Bezos’s tenants. It’s what makes service-oriented architecture possible.
Every service interface needs to be easily accessible. The information about the service and how to consume it must also be well documented and easily queryable.
I’m sure there was a lot of initial resistance to Bezos’s initial mandate. Human nature is human nature, and oftentimes, we are resistant to change… we usually like the way we do things, and we get used to the way we do it.
But the facts speak for themselves. Amazon transformed itself from an online bookseller, into a digital platform service which they’re able to sell for near pure profit and help their bottom line. It makes their investors happy, and their profit margins are going nowhere but up.
Amazon’s success story should be a lesson to other organizations who must deal with the problems of antiquated and poorly designed enterprise systems.
Bezos knew what he was doing. He may not be a technical architect or engineer, but he knew what he was doing when he issued his mandates.
He wanted a system that was easy to navigate, easy for one part of a system to interact with another part of the system, and avoid redundancies and duplicate sub-systems.
When you don’t have something like what Bezos strived for, you end up with a hot mess of duplicated, highly siloed enterprise systems, that create massive technical debt and requires an army of technical staff and deep financial pockets, just to keep it barely up and running.
I see this time and time again.
If I ever end up in charge of my own enterprise system, I’ll probably issue out the same mandate.
I’m sure I’ll ruffle feathers like Bezos did … but saying “have a nice day” couldn’t hurt, right?