Founded in 2009, Prezi is a presentation software company aimed at reinventing presentations by giving users the tools needed to clearly organize their ideas and present them in a highly engaging way. Prezi’s cloud-based software is known for its interactive, zoomable canvas that offers the ability to show relationships between the big picture and fine details, allowing users to place ideas within a broader context. The company supports 60 million users who have used Prezi’s software as a service to create more than 200 million presentations. Prezi’s 230 employees work in offices located in Budapest and San Francisco. The company has a rapidly growing user base, with more than 10 million new customers each year.
To keep up with rapid growth, Prezi needed a highly scalable and automated cloud-based platform to host its software as a service. It was also critical that the platform be easy to maintain, flexible, and intuitive so that developers could quickly create new features for customers. In addition, the company needed a cloud platform that could reliably serve the more than one million new customers moving to Prezi every month. “Our users can be preparing presentations for hundreds of people,” says Zoltán Nagy, senior tools engineer at Prezi. “If we have an outage, they will cancel their subscription right away, so reliability is critical for us.”
Employees at Prezi also needed a way to quickly analyze and visualize data so they could improve their service offerings, make insightful decisions about the business, and identify new revenue opportunities. Yet when employees needed information, they were required to contact the data team, which then wrote specific code for each query, manually moving the data into a table to perform the analysis. With so many requests coming in from different parts of the company, the data team was often backlogged, sometimes taking days to fulfill specific requests. “Since we were the only ones who could access company data, our workloads were very, very huge,” says Tamás Németh, data infrastructure tech lead at Prezi. “Answering employee questions and monitoring the performance of our products were both super slow.”
In the first few years of business, Prezi hosted its interactive presentation tools on a managed cloud platform, with many of its services built in house. The company eventually began migrating its software-as-a-service to Amazon Web Services (AWS) in 2012 because of the comprehensive, highly scalable platform AWS offers. “Automation and scalability were critical for us,” says Nagy. “We had a limited number of people on our staff with database experience, and we figured that if AWS can handle these tasks for us, we’d be far better off.”
Prezi was also drawn to AWS because of Amazon Redshift, a data warehouse solution that offers the ability to analyze data simply and cost-effectively. To fulfill its goal of becoming a data-driven culture, Prezi wanted all employees to be able to access data without waiting around for help from a data team expert. The company also wanted to make it easy for employees to visualize data so they could quickly spot trends and make critical adjustments to their product strategies. “Redshift is a fast, fully managed, petabyte-scale data warehouse solution, and we voted for it as our data warehouse technology,” says Németh. “We have a couple of terabytes of data in it, and it is available for everybody doing interactive data analysis with blazing-fast response times.”
In addition to using Redshift, Prezi relies on several other AWS database components including Amazon Relational Database Service (Amazon RDS) to operate and scale SQL Server in the cloud; Amazon DynamoDB, to store metadata and move data between applications; Amazon ElastiCache to deploy, operate, and scale an in-memory cache in the cloud; and Amazon Simple Storage Service (Amazon S3) to store user presentations and back up its other databases. “We’re a presentation software provider, and building a scalable database and storage system is not one of our competencies,” says Nagy. “With AWS, we don’t have to do any maintenance, and our databases automatically scale to fit our needs.”
For analytics, Prezi is tapping Amazon Elastic MapReduce (Amazon EMR), which allows developers to easily and cost-effectively process vast amounts of data. And for computing, the company uses Amazon Elastic Compute Cloud (Amazon EC2) to quickly scale compute capacity, both up and down, as the company’s compute requirements change. Prezi relies on AWS Config for security and governance. AWS Config tracks configuration changes to Prezi’s resources in AWS and sends notifications whenever resources are created, modified, or deleted. Prezi has also created AWS Config rules to govern provisioning and configuration of its resources in AWS. Prezi also relies on AWS CloudTrail for its security and compliance-auditing needs. AWS CloudTrail logs AWS API activity in Prezi’s accounts and stores important information such as the AWS API call, identity of the AWS API caller, and time. These logs can be analyzed for security analysis or even compliance auditing.
Additionally, Prezi moved two of its most critical back-end services to AWS Elastic Beanstalk, which deploys and scales web applications and services automatically. This lets Prezi’s developers worry less about managing infrastructure. Prezi is also planning to move the rest of its infrastructure to AWS with Elastic Beanstalk. Using Elastic Beanstalk’s multicontainer Docker support, which is provided by Amazon EC2 Container Service (Amazon ECS), Prezi aims to create a microservices architecture that would let its developers easily spin up customized development environments without worrying about the complexities of provisioning infrastructure.
In the near future, the company plans to add AWS Key Management Service (Amazon KMS) to encrypt data and protect the security of its keys. And it continues to evaluate new AWS service offerings with the goal of replacing many of its homegrown solutions. “We are always keeping our eye on the AWS development model, and we see new releases we consider whether we can replace an in-house solution so that we can spend more time improving our presentation software itself,” Nagy explains.
By migrating to AWS, Prezi has obtained a highly scalable and automated platform that is helping the company keep pace with its explosive growth. Moreover, the user-friendly development environment has allowed developers to get up to speed very quickly, while making it simple to view the information they need. “The web console provides information in a way that’s easy for developers to consume even without a deep operations background,” says Nagy. “For example, they can see what databases we have, what servers are running, who started them, how long they’ve been running, and so on. They have a complete picture of what’s happening at all times, which increases their productivity.”
AWS has also enabled the Prezi development team to speed up product creation. Using Amazon APIs, Prezi developers have the documentation they need to get started and vast flexibility to customize solutions. And using a microservices architecture in combination with AWS, developers can work on isolated tasks without the worry of duplicating efforts. Capabilities such as these enable Prezi developers to introduce new services sometimes in just one to two days, compared to the weeks or months required in the past. “Before, we had one huge code base, increasing the risk that developers would work in conflicting ways,” Nagy says. “Now, we have small services with well-defined responsibilities, so it’s much easier for developers because they’re working on physically separate code bases. They can also share the services easier to obtain feedback from other developers.”
Perhaps most importantly, AWS has helped Prezi fulfill its goal of becoming a truly data-driven company. With the help of Amazon Redshift, data that was once the sole domain of Prezi’s data team can now be accessed by anyone in the company, enabling employees to get questions answered very rapidly. In addition, company leaders can analyze greater amounts of data, using data visualization tools to monitor the performance of Prezi products, while gaining detailed insight into product users. “Data visualization has been opened up to the whole company,” says Andras Balogh, senior lead analyst at Prezi. “Before, the average product team had four charts. Now it has six dashboards, and each dashboard has four to eight charts. So we have way more knowledge than we used to, and decisions are made based on actual information—not on gut feeling.”
Increased access to data has also enabled Prezi to retain customers and pinpoint new revenue opportunities. For example, product managers now better understand what successful users have in common. Likewise, Prezi’s sales and support teams can now identify customers using just a small percentage of assigned seats so they can offer help with adoption. Initiatives such as these are improving customer satisfaction and spurring long-term revenue growth. “With AWS, we have far greater insight into our customers, and we know, based on the data, which initiatives we should push forward,” says Balogh. “Easy access to data has changed our thinking. It has made our business infinitely better.”
To learn more about how AWS can help you with data analysis, visit our Big Data details page.