CASE SUDY OF COMPANIES BENEFITING FROM AWS
Over the past couple of years, companies ranging from small startups to large enterprises have shown a growing interest in public clouds such as AWS. So many AWS case studies are not surprising, given that both the operation expenses model of public clouds and their abundance of available managed services make it very easy to start a business in the cloud or migrate and existing one to it.
While we did have an idea of the scale at which some businesses were utilizing AWS, some of the recent headlines still caught many by surprise. “Pinterest has spent $309 million on Amazon’s cloud since 2017 as part of a $750 million contract,” one read. “Slack to spend at least $250 million on Amazon Web Services over five years,” and “Lyft committed to spend $300 million on AWS between 2019 and 2021,” are others. This article will focus on why these major companies are paying such large sums to use AWS infrastructure, and why they are making such huge commitments to public cloud use.
AWS Case Studies:
Slack
Slack, too, has significant commitments to the Amazon cloud and are just one of the many AWS case studies that have invested a signifcant sum for a period of time — somewhere in the vicinity of $250 million over the next five years. This means that about 10% of their annual revenue is being spent on processing and delivery infrastructure.
Slack has been running on AWS since its inception in mid-2013. Slack’s predecessor, a company called Tiny Speck, used AWS back in 2009 when the public cloud was still in its infancy. Today, Slack is being used by numerous companies, and the number of messages flowing through the app every day is in the millions. The company is only getting larger, thanks to its 15% weekly user growth rate.
Slack relies on simple cloud architecture (EC2 instances behind Elastic Load Balancers, S3, etc.), but it benefits greatly from the resource availability that AWS can provide. While adding capacity in traditional data centers took weeks, it is a non-issue with AWS. For a fast growing company like Slack, the cloud was not only the best choice, it was probably the only one. In addition, the managed nature of most of AWS’ services has allowed Slack to minimize their IT management involvement in order to focus on their much sought-after product instead.
Pinterest has also recently filed for an IPO, allowing the public the opportunity to look into their contracts with Amazon’s public cloud service. According to their agreement, Pinterest will spend $750 million on AWS by 2023. They have already spent over $300 million since 2017, so, by the looks of it, they will have no problem spending the rest by the end of the contract’s term. As with Lyft and Slack, Pinterest will have to pay any difference if their AWS use falls short.
Pinterest also started on AWS back in 2010. Their business has since grown to a staggering 200 million active monthly users. In 2015, Pinterest was already looking into employing a containerized solution. They first moved to Docker containers, then they started using self-hosted Kubernetes for orchestration. This shift allowed them to optimize their cloud infrastructure, simplify their deployment and management processes, and save on infrastructure costs. In addition to using AWS for processing, Pinterest also uses various other services for storage and data analysis, allowing them to put more focus on their product.
Coursera
Coursera is an educational technology company with a mission to provide universal access to the world’s best curricula. The company partners with top universities and organizations worldwide to offer online courses for anyone to take, for free. Coursera has more than 13 million users from 190 countries enrolled and offers more than 1,000 courses.
Coursera had a large monolithic application for processing batch jobs that was difficult to run, deploy, and scale.A new thread was created whenever a new job needed to be completed, and each job took up different amounts of memory and CPU, continually creating inefficiencies.A lack of resource isolation allowed memory-limit errors to bring down the entire application.The infrastructure engineering team attempted to move to a microservices architecture using Docker containers, but they ran into problems as they tried to use Apache Mesos to manage the cluster and containers — Mesos was complicated to set up and Coursera didn’t have the expertise or time required to manage a Mesos cluster.
Docker containers on Amazon EC2 Container Service (ECS) enabled Coursera to easily move to a microservices -based architecture.Each job is created as a container and Amazon ECS schedules the container across the Amazon EC2 instance cluster.Amazon ECS handles all the cluster management and container orchestration, and containers provide the necessary resource isolation.
Because Amazon ECS setup is straightforward and it manages all of the details of the cluster, the team had a prototype up and running in under two months.Time to deploy software changes went from hours to minutes, and each team can now develop and update its respective applications independently because the applications are resource isolated with no cross-dependencies.Auto Scaling groups allow the compute capacity to scale up to handle dynamic job loads.No extra infrastructure engineering time is spent installing software and maintaining a cluster — Amazon ECS handles everything from cluster management to container orchestration.
Summary
When startups begin to grow exponentially, the cloud seems to be an easy (if expensive) solution that provides new companies with the agility they need as well as the ability to scale almost infinitely very quickly. When companies reach these high levels of hardware requirements, owning and maintaining the necessary bare metal is typically not a viable solution. For all three of these companies, the advantages that AWS cloud provides seem to outweigh its enormous costs.