99Designs Case Study
99designs is an online marketplace that connects companies or individuals who have design needs with designers who can provide those services for projects like logos, brochures, clothing, and packaging. Designers compete for work by responding to customer design briefs posted on the website; winners are rewarded with cash payments for their work. The San Francisco-based company currently operates in 21 countries.
AWS helped 99designs reduce the amount of infrastructure we need to manage directly. The reduction of this operational burden was instantly demonstrative on the bottom line.”
Chief Technology Officer, 99designs
When the company first launched its service it grew quickly, gaining popularity with designers and the companies needing their services, creating rapid year-over-year growth. 99designs responded by continually adding to its service offerings. But the combination of fast growth and constant innovation strained its hosted IT systems.
“We faced a number of infrastructure issues in our existing hosting facility that could not be solved without a large cash outlay and long-term, lock-in contract,” says Chief Technology Officer Lachlan Donald. “Even if we could justify the cost of a dedicated server solution, we had little confidence that the hardware provisioned for us would meet our requirements in the near future."
99designs needed to find a better hosting solution that could keep up with high levels of growth while keeping capital costs as low as possible.
Why Amazon Web Services
99designs migrated to Amazon Web Services (AWS) with an application architecture comprised entirely of self-managed databases, application hosts, and heavy use of Amazon Simple Storage Service (Amazon S3) for storing a high volume of design assets, 100 TB or more.
As 99designs grew, its site architecture evolved to accommodate business processes—and to take advantage of new AWS offerings like the Amazon Relational Database Service (Amazon RDS), Amazon ElastiCache in-memory caching service, Elastic Load Balancing (ELB), and Amazon Simple Queue Service (Amazon SQS).
“AWS helped 99designs reduce the amount of infrastructure we need to manage directly,” says Donald. “The reduction of this operational burden was instantly demonstrative on the bottom line.”
The growth in both traffic and headcount led 99designs away from its prior application architecture. Production systems were restructured to mirror internal business units. Previously, all business units had shared a common codebase and production environment, which obscured any understanding of cost efficiencies available to the different products. By varying the functionality and hosted environments by business unit, the company can make informed cost/benefit tradeoffs tailored to the various units. Now 99designs uses individual accounts for each unit linked under the AWS Consolidated Billing feature to keep systems logically distinct and provide clearer cost accounting.
The cloud architecture established with AWS has allowed 99designs to scale to more than 1.6 million registered users serving 650 million dynamic application requests across the product suite, while also supporting microservices (a marketing email system and payment handling, for example). With exponential growth across all markets, 99designs currently receives two new design submissions every second, with more than 55 TB of design assets stored in Amazon S3.
99designs is an online marketplace that connects companies or individuals who have design needs with designers who can provide those services for projects like logos, brochures, clothing, and packaging.
Benefits of AWS
- Scale to more than 1.6 million registered users
- 55 TB of design assets stored in Amazon S3
- Keep systems logically distinct to provide clearer cost accounting
AWS Services Used
Amazon RDS makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks.
Amazon ElastiCache offers fully managed Redis and Memcached. Seamlessly deploy, run, and scale popular open source compatible in-memory data stores.
Elastic Load Balancing
Elastic Load Balancing automatically distributes incoming application traffic across multiple targets, such as Amazon EC2 instances, containers, IP addresses, and Lambda functions.
Amazon SQS is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications.
Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.