In 2009, a group of talented students from the University of Waterloo in Canada created Kik Interactive. The company’s messaging service, Kik Messenger, is now used by more than 275 million subscribers, mostly in the U.S. In addition to providing a range of text, picture, and video-messaging functionality free of charge, Kik Messenger has an integrated browser for searching and accessing web content. Kik also offers developer tools that allow organizations to optimize and distribute their web content to subscribers on its platform.
To retain existing subscribers and to drive sustainable growth, Kik needs to ensure that its messaging service is fast, responsive, and constantly available for subscribers. Chris Fairles, head of the Kik DevOps team, says, “Our subscribers depend on us to deliver their messages in real time every time, and it’s a responsibility we take very seriously. To make our services as good as they can be, we invest in technologies that are reliable, secure, and flexible enough to meet subscribers’ changing needs.”
As an additional challenge, Kik must listen to its subscribers and make sure that their needs are being met with the latest product enhancements. “We have lots of data about customers and how they use our services, but this is often locked away in log files or other systems around the company,” says Fairles. “To convert this data into real business insight, and to ensure that all our development decisions are based on solid evidence, we are investing heavily in the latest big data techniques and technologies.”
To provide the best subscriber experience, Kik uses a combination of in-house servers and infrastructure hosted on the Amazon Web Services (AWS) cloud. Fairles says, “We use AWS to deliver a range of functionality for our users, from profile pictures and picture messaging, to video messaging and account management.”
Kik’s AWS architecture incorporates Amazon Elastic Compute Cloud (Amazon EC2), Amazon Simple Storage Service (Amazon S3), and Amazon Virtual Private Cloud (Amazon VPC), with Amazon CloudFormation used to provision and deploy cloud-based infrastructure on demand. “Using AWS CloudFormation, we have adopted what we call a ‘microservice’ architecture, with all our AWS infrastructure defined as code,” says Fairles. “In the near future, we will also adopt Amazon CodeDeploy, which will enable us to spin up standardized IT stacks quickly and easily, with virtually no manual effort.”
With AWS, Kik is also able to deliver a fast, responsive service experience for subscribers. “We use Amazon Direct Connect to speed up data exchange between our internal server farm and the AWS cloud, which minimizes latency and jitter,” says Fairles. “We also use Amazon CloudFront and Amazon Route 53 to deliver content to the edge points closest to subscribers, which makes our application super-fast and responsive wherever users are.”
Using the microservice architecture, Kik has also created a sophisticated data analytics platform on AWS to provide new, value-added insight to the business and to optimize the subscriber experience. This is based on Amazon EC2, Amazon S3, and Amazon VPC, with Amazon Redshift providing the core data warehousing functionality.
Source data for the analytics activities originally came from hundreds of terabytes of log file data that was previously stored in Amazon S3 buckets. Amazon Elastic Map Reduce (Amazon EMR) and Hadoop Pig scripts were used to summarize and process the log files before they were loaded into Amazon Redshift, where they were compressed still further. “From our starting point of 500 terabytes, we now have 50 terabytes of data under management, which makes our job so much easier.”
Kik’s AWS infrastructure, which incorporates Auto Scaling, enables the company to deliver messaging services and other content much more cost-effectively and pay only for the compute and storage resources it uses. “Our AWS architecture scales up automatically during peak traffic times, and down again when things get quieter,” says Fairles. “This means we pay only for the compute and storage resources we use, which makes our business far more profitable than it would otherwise be.”
Kik has also been able to optimize service availability for subscribers with AWS. “Every component of our AWS architecture is fully redundant, which means we can keep services online even if there’s a major technology disruption,” says Fairles. “We also use multiple Availability Zones in AWS to ensure that our application is constantly available for subscribers, even if an entire AWS data center should become unavailable.”
With Amazon Redshift, Kik Interactive is able to unlock valuable insights from its customer and operational data. Joel Cumming, head of data at Kik, says, “We can see how different types of users are engaging with our services and identify their needs and preferences. We can then use this insight to inform new development projects, address service issues, target new markets, deliver a personalized experience, and minimize customer churn.”
Gaining this insight is much less expensive with Amazon Redshift, which eliminates in-house hardware, software, and support requirements. “Most competing data warehousing solutions would have cost us up to $1 million a year, factoring in purchase costs and ongoing maintenance and support,” says Cumming. “By contrast, Amazon Redshift costs us just $100,000 all-in, representing a total cost saving of around 90 percent.”
Recently, a zero-cost Redshift hardware upgrade enabled Kik to achieve a 30 percent uplift in data warehousing performance. “AWS is constantly upgrading its platform, allowing us to deliver more insight to the business much faster than was previously possible,” says Cumming. “As a result, we can collect more data from more sources and gain new insights into customer needs—all with fewer resources.”
Recently, Kik has deployed AWS Lambda, which Cumming describes as the “next frontier” for data analytics at the company. “We’re really excited,” he says. “AWS Lambda automatically provisions the infrastructure we need to run our data science applications so we don’t have to. Instead of spending our time looking after servers, we can focus on what we do best—delivering insight to the business and improving the experience for our users.”
Alongside AWS Lambda, Kik is employing Amazon API Gateway and Amazon DynamoDB, which give internal services across the company instant access to the data they need. “API Gateway has enabled us to very quickly surface complex statistical models and personalization within our product,” says Cumming. “We built the first iteration of our internal Data API on DynamoDB, Lambda, and API Gateway extremely quickly, and now services within Kik can be personalized and scale in a way not possible in the past.”
To learn more about how AWS can help you reduce the cost of data management, visit our Big Data details page.