AWS Case Study: Unfuddle
Unfuddle was born out of need. The founders Joshua W. Frappier and David Croswell were developers working in small software development firms. Frappier was responsible for his team’s toolchain and spent a good deal of his time managing a dedicated server and keeping Subversion and Trac tools up to date. He looked for a hosted project management solution tailored to software development but couldn’t find an affordable offering. Thus, in 2006, Unfuddle was created. Unfuddle provides bug and issue tracking, Subversion and Git hosting, time tracking and more – together in a secure, hosted offering with tiered pricing plans.
Unfuddle initially hosted Unfuddle on another hosting provider, but after two and a half years, the company's growth had accelerated significantly. "We discovered that our original hoster's offering forced us into a rigid and expensive trajectory," Frappier says. In the second half of 2008, Unfuddle needed to make a decision: continue with its hoster or switch to a more dynamic, scalable infrastructure platform.
Why Amazon Web Services
After doing some testing and cost analysis, the company decided to move to Amazon Web Services (AWS). “Unlike traditional dedicated hosting environments, AWS gives us unprecedented control over all aspects of our infrastructure," Frappier says. "The ability to commission new systems or to even reconfigure our entire topology is right at our fingertips. Coming from a traditional hosting environment, this is very empowering and has really lowered the risk involved with trying out new solutions to problems. It has allowed us to cheaply and easily try (and fail with) new ideas.”
Unfuddle is now using Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3) for virtually all of its infrastructure, including web and database servers. Unfuddle makes extensive use of Amazon Elastic Block Store (Amazon EBS) volumes and snapshots, which has transformed their backup process and gives them nearly instantaneous access to archived customer data.
“Before we moved to AWS, we were constantly battling our own growth and success," Frappier says. "Using AWS in conjunction with a more flexible topology has enabled virtually infinite scalability for Unfuddle. This is critical, as it means that we no longer have to limit growth in new areas of business opportunity for fear of affecting our existing customer base."
To best take advantage of AWS, the Unfuddle team revamped vast amounts of code to decouple their systems and scale horizontally. “Now that there is no longer an imminent need to upgrade our infrastructure, we can return to improving the feature set of Unfuddle.”
By moving to AWS, Unfuddle’s site performance improved significantly across the board. After announcing their switch, Unfuddle customers responded with praise. One Unfuddle customer's blog reads, “Wow. Speed is now excellent. Thank you very much for this step forward! Keep up the excellent service.”
Like many small companies, cost and performance played a big part in Unfuddle's infrastructure decisions. But in reality, these were only partial advantages to using the AWS Cloud. “The most important advantage turned out to be configuration flexibility and improved risk management," Frappier says. "Looking back, we now know that moving to Amazon EC2 was the right decision. So far, AWS is greatly exceeding our expectations.”
He concludes, “AWS has challenged Unfuddle to think differently and more broadly about our infrastructure and Unfuddle customers are benefiting daily from that challenge. No longer are we fighting our infrastructure as a necessary evil. Moving to AWS may be the single biggest and most positive technical decision Unfuddle has made as a company since our launch.”
To learn more about how AWS can help your web application needs, visit our Web Applications details page: http://aws.amazon.com/web-mobile-social.