Steve Yegge has an epic rant on Amazon being a poor place to work but more brilliant than Google when it comes to innovation at platform scale from 2011. David Skok recently published a post on his blog titled Microservices Essentials for Executives: The Key to High Velocity Software Development. The idea is that tech companies start out building their product as one large, monolithic system because it’s simpler and faster. Then, as the startup achieves greater levels of success, innovation slows down considerably even though more and more people are added to the product team. What gives?
The larger the product, the harder it is to make changes to it due to all the dependencies. Amazon was the first major technology company to realize that Internet scale, and it’s greater levels of complexity, requires a new way of building large-scale systems: microservices. Microservices are simply smaller, self-sufficient special purpose products that form a platform (e.g. tiny apps that are used to make a big app). Amazon went further and built Amazon Web Services (AWS) to make the backend of these microservices even easier to manage and scale, and now AWS is one of the fastest products to $10 billion in annual revenue, ever.
Tech entrepreneurs need to understand the benefits of microservices and start planning them once they hit the growth stage, but not before. All major platforms going forward are going to have some form of microservices underpinning them.
What else? What are some more thoughts on platforms and microservices?