20 years ago, who would have thought that an online bookstore would become one of the largest providers of cloud hosting services in the world? One day around 2002, Amazon founder Jeff Bezos decided “all service interfaces, without exception, must be designed from the ground up to be externalizable. What did that mean? The team should be able to plan, design and expose the interface to developers in the outside world. The mandate finished stating, “Anyone who doesn’t do this will be fired. Thank you; have a nice day!”
According to the legend, this order transformed the company into a modern web space and formed much of the modern vision about APIs and micro services.
The mandate
The mandate in question become somewhat legendary in the API/microservices space, as it shaped the basis for much of the modern API design paradigm within the corporate view.
Instead of telling his team which technologies to use, Bezos defined only the outcome of departmental systems deployments. These platforms became a network of business units that were integrated through the flow of data and information.
The mandate was triggered by the rising cost of teams within Amazon because of not having consistent and well-managed ways of exchanging data and capabilities between the different departments. Jeff Bezos realized they needed a new approach if his company was going to become more agile and drive innovation through technology. The mandate outlined a different approach that required IT to scale its technology assets with APIs–externalizable services–so the organization could independently reuse and leverage the assets to drive business outcomes.
The mandate included the following statements:
All teams will henceforth expose their data and functionality through service interfaces.
The first part of this mandate is a demand to provide functionality through a service interface. According to Bezos, interfaces will allow for transmutability, bi-directional interaction, and leveraging within other systems. Users could leverage interfaces and their internal functions to do more with less handholding.
For Amazon, the concept of providing their data and functionality through service interfaces both internally and externally was a major big revenue driver for external users. It also encourage collaboration through interfaces and standardizing data interactions.
Teams must communicate with each other through these interfaces.
Internal communication within a massive corporation might be challenging. This mandate was his answer to teams complaining about working with each other and the issues they had to go through when integrating features across service boundaries to get things done. APIs mandate was immensely helpful. APIs could be very helpful to sort those issues whilst improving and facilitating the process of exchanging.
The only communication allowed is via service interface calls over the network.
Once the team start to use the API, they begin to create their interface to add and exchange data. If the company has a standardized approach, every aspect of the necessary data would be in an API that is well defined, well documented, and easily leverageable. Additionally, any generated data, would be stored in a known schema with response formats that will allow new developers know if a call was successful or not.
There will be no other form of 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.
Platform businesses can benefit from this way of communication, which produces value for each member of the organization. APIs provide an easily way for connecting various parts of a business and provide flexibility to adapt to changing requirements. Additionally, it eliminates duplication and reduces software development time, thereby improving developer and IT productivity.
It does not matter what technology they use. HTTP, Corba, Pubsub, custom protocols — does not matter.
API tech comes and goes. Tomorrow’s technology may be foundationally incompatible with today’s technology. Without having additional hooks, language/framework implementations, or cross-platform choices, your API will be obsolete soon. APIs reflect business functions, and they should evolve alongside the business and technical requirements that enable them.
Technological solutions can only do what they are created to do and they should be designed around the organization purpose to ensure consistency is not around your function but is instead around your restrictions.
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.
One of the core problems in any development paradigm is targeting the right audience with the right tools. Accordingly, in the Bezos Mandate, all service interfaces were required to face an external user type. When an API is designed, it takes a specific form and function dictated by the developer’s needs and the development group’s choices, which means that the API is built for a particular purpose.
When an API is created for external interaction, the development focus move to external developers who are requesting the functional expansion. To meet those demands, developers should generate software that can keep pace with business and new technology needs.
Lessons we could learn from Jeff Bezos’ mandate
The mandate was key to Amazon’s success and outlined a different approach to technology and APIs. By developing APIs-externalizable services, the organization could reuse and leverage the assets to drive business outcomes. Amazon created its own internal API economy that helped them to change the way they operate by empowering more technical employees to connect, discover and reuse IT assets. The main goal was to enable self-service channels for accessing data required to do all the tasks required such as reporting, creation and modification of processes without spending much time and effort. This self-service access to data and resources enables developers to finish projects faster, increase operational efficiency and deliver improved customer experiences.
Here we have listed some lesson we can learn from Bezos mandate.
Make your building blocks public and reusable
By introducing an API-first culture, Jeff Bezos was able to improve efficiency within the organization ensuring that there was a universal language to communicate between different departments.
If you want your business to succeed, you should know the core essence of what it is about: find a problem, solve it, make money to solve it. In the case of Amazon, the had problems fixing customer (selection, price, speed and accuracy of delivery). That was it. Those were the core problems.
The internet has redefined the impact and importance of geography. In the new world, one store could serve everyone. Therefore, smart companies are taking advantage of this new archetype with both technological and financial innovation. In Amazon’s case, their financial innovation is to race towards the bottom with prices and with margins.
Motivate your team to achieve better results
Getting your team motivated to achieve better results is not easy. However, since your employees are your biggest resource, it is relevant to know how to encourage and inspire them to improve their work efforts. Motivating your employees is not as complicated as you may think. Actually, some of the ways to motivate your team will also improve other parts of your business.
Be stubborn and flexible
According to Bezos, good entrepreneurs must be stubborn and flexible, “stubborn on vision; flexible on details”. Bezos thinks, “If you are not stubborn, you will give up on experiments too soon. And if you are not flexible, you will pound your head against the wall and you won’t see a different solution to a problem you are trying to solve.”
There is a challenge in being stubborn and flexible. Firstly, you have to stick to your vision and secondly, you have to be flexible about the tactics. Bezos warned: “The thing about inventing is you have to be both stubborn and flexible, more or less simultaneously. The hard part is figuring out when to be which”
Most of successful entrepreneurs are innately stubborn individuals. They are the natural leaders who like to make things their way. Actually, one of the characteristics that define good entrepreneurs is being flexible on details. Just ask the person who built a company from 0 employees to over 117,000. He probably knows a few things about leadership.
Never stop experimenting
For most CEOs, experimentation is imperative for their business. The question is how to be innovative and stay competitive in the market. Automotive companies have concept cars; food companies experiment with new foods and flavors; retail companies experiment with placement of products and store atmosphere; and many high-performing companies, like Google, allow their employees to experiment. Experimentation is everywhere, is always happening and it is necessary.
At Amazon, experimentation and willingness to invent has always been a part of the culture.
Bezos API mandate takeaways
The Bezos mandate marked an important milestone for modern API development. The lessons imparted are important in a wide range of situations, and even for non-corporate instances, and could help to structure API organizations effectively. The impact of the API Manifesto has since expanded to the IT industry as a whole from start-ups to massive organizations. The idea that information systems are more valuable when interacting through clearly specified and well supported API’s has become very popular.
In your company, the API mandate can be immensely helpful, however, you should bear in mind that it needs to be tailored to the environment and culture established there.