

ThoughtWorks clients are using Amazon AWS’ reliable, scalable and cost-effective computing platform including EC2, S3, EBS, SQS, VPC, CloudFront and other services. Learn what real-life business advantages are being delivered and how we’re helping. Here are a few of the ways we are helping our clients benefit from AWS:

The challenge: The agency's client is launching a major campaign to award a prize valued in the hundreds of thousands of dollars to the winner of a contest. The contest will run for 6 weeks and be primarily operated online, where contestants can register, upload materials, and track their progress. The website will also be open to spectators who can follow the contest, vote for their favorite contestants, and watch videos of the contestants' entries. The website will only live for the duration of the contest, but it must handle sudden spikes of traffic without losing performance. For example, 2 million visitors are expected immediately after the contest is plugged on a major US talk show. The existing team were having trouble meeting the business and scalability requirements. Contest marketing was already in full swing, forcing a very tight deadline.
The solution: ThoughtWorks took on development of the website. We created an architecture in AWS with auto-scaling to handle the massive traffic spikes robustly and cost-effectively. This architecture consists of auto-scaling EC2 instances fronted by Varnish with Elastic Load Balancing, and RDS for the back-end data store. All static content, including user-generated media, is stored on S3. To help meet the tight delivery deadline, ThoughtWorks automated environment set-up and AMI creation. Developers can rapidly deploy and test the latest software versions, smoothing and speeding the promotion of changes from development into production.

The challenge: ThoughtWorks developed the client’s new customer-facing web site, integrated with a commercial CMS. The web site was built to serve a large amount of high-quality digital imagery, and needed to be tested under a realistic load to ensure responsive performance. A complicated page structure meant that traditional URL-based testing would not adequately prove the performance, but realistic browser-based testing would require more hardware than was available.
The solution: Using AWS, ThoughtWorks ran full-load performance tests in a cost-effective manner for the client, ensuring the client’s customers would get promised performance without breaking the client’s budget. We used multiple instances of EC2 to scale up simulated user loads running on a custom AMI based on Ubuntu, with Firefox and the Selenium web testing framework installed. Selenium grid was configured to drive 20 browsers per EC2 instance through a realistic series of multi-page user journeys. For the initial release, we used 10 EC2 instances in parallel, generating a load equivalent to thousands of simultaneous users. The results were consolidated on S3 for later review. The client will continue to benefit by using the set-up to qualify future releases, paying for the testing infrastructure only as needed.

The challenge: The client, whose online auction segment is new and fast growing, needed more server capacity to support product development. The client was spending over $100k per year for collocated servers for code builds and testing. Additional hardware took weeks to get in place, and with the additional build servers that were needed, the client’s outlay would at least have doubled.
The solution: Moving code integrations and test to AWS EC2, ThoughtWorks cut the client’s spending on the build servers by more than half, yet the number of code builds tripled. This has improved developer productivity and release quality, while cutting costs all at the same time. The client also benefits from managing emergency patches more cost-effectively, since additional fully-configured EC2 environments can be created in about 15 minutes, saving developers the time of switching out current projects from a limited set of servers. The continuous integration infrastructure now runs on 15 EC2 m1.xlarge servers. Servers are down (and incur no costs) at night, and on weekends, dramatically saving cost over the collocated servers paid for round the clock. In addition, the client now takes advantage of EC2 to stream live audio for the production site, saving more than 90% of the cost of using collocated servers.

The challenge: The client sought a lightweight, cost-effective disaster recovery solution for their online store in the event of datacenter failure, with features that would keep customers engaged and give them alternative options for making purchases without necessarily replicating the full functionality of the website. The former solution, which simply requested that customers check back later, risked sending those customers to competitors. With the holiday season approaching, the project had to meet extremely tight deadlines and required a very rapid solution.
The solution: Amazon AWS allowed us to make a business deadline that couldn’t have been met with a physical datacenter approach. We built a new website, with features to allow customers to browse the product catalogue and check availability in local stores. AWS allowed us to speed delivery with rapid provisioning of development, BA and performance testing environments as needed. AWS’ pay-for-what-you-need model was an excellent match for disaster recovery. Rather than build an infrastructure that sits unused the vast majority of the time, minimal costs are paid until a DR incident occurs. At that point AWS’ load-balancing and auto-scaling features help support the rapid spike in demand.
If you have a project or a sticky problem you would like to talk over with us, or would like to know more about our services, get in touch, we would love to meet up...
Hands-on training sessions for everybody who wants to get started with AWS and take advantage of AWS’ reliable, cost-effective computing platform.