Taplytics: Delivering Millions of Smart Push Notifications and Mobile A/B Testing with AWS
Taplytics is a mobile optimization platform, providing a deeply integrated set of A/B testing, push notification, and analytics tools that enable an entire team to work together to deliver great experiences to their customers.
The Early Days: A Great Divide
We began as a small team that developed mobile apps for the App Store soon after it launched in 2008. We quickly ran into a bottleneck in our development cycle. The non-coders on our team were trying to drive improvements to our apps through their areas of expertise, such as design and content. At the same time, the coders on our team had a long list of bugs and features they needed to get through before the next release. The more we kept working, the bigger the bottleneck became and the slower our release cycles were. Our bottleneck grew into a huge disconnect, a “great divide” between the non-coders and the coders.
We knew other teams had similar challenges. For example, on many teams the Product Managers and Marketing teams owned the key user performance metrics, but they couldn’t drive improvements by themselves. Any changes required developer time to implement, but those changes often became a low priority because developers were busy trying to release new features or fix current bugs.
Building the Platform
Our team knew there had to be a better way to tackle this disconnect problem, and we weren’t finding any tools in the market to help us. So we developed the core part of our platform: We built a tool that let us push content, design, and layouts independent of developer code, while keeping our apps completely native.
We showed other teams our newly developed technology, and they were enthusiastic about its possibilities because they had experienced similar “disconnect” challenges. At that point, we knew we had found something worth building.
Our team took our dynamic editing technology and publicly released the first ever visual A/B testing platform. Now Marketers and Program Managers could make visual changes to their app and test those changes to ensure they were having a positive influence on their key metrics. These changes could then be released live to all their users without having to resubmit to the app store for review. The typical review process takes 7–10 days but with Taplytics installed, once a team determines that a specific change drives more signups or revenue they can release those changes live without delay.
Our goal with Taplytics was to create a platform for teams to optimize their app as a whole. Now that teams could optimize their in-app experience we began to develop smart push notifications so teams could re-engage their users with a smarter notification that delivered value.
Creating Personalized Notifications
Our smart push notifications enable you to A/B test and deliver very personalized push notifications to all your users or just a segment of your users. You can create the notifications based on in-app activity, location, and custom data. You can use the custom data to insert a level of personalization directly into your messages, such as inserting a user’s name or previous purchase.
Delivering Millions of Notifications at Scale with AWS
As a startup, it was crucial that we stayed focused on our core product by leveraging available infrastructure and proven technology. When we created our smart push platform, we needed a system that could quickly scale to handle the delivery of millions of notifications all at once. Instead of trying to tackle this in-house, we knew it made sense to build our platform on top of AWS.
By implementing AWS Lambda, Amazon Kinesis, and Amazon SNS, we can process and deliver millions of notifications at scale. Amazon Kinesis allows us to manage the queue of scheduled notifications for both our automated and campaign based notifications. When dealing with millions of notifications we needed a system to reliably schedule and terminate messages based on in-app activity and predefined rules across multiple time zones. The load on our platform varies widely throughout the day, so we leveraged Amazon Lambda, to be able to spin up millions of nodes in an instant and successfully deliver millions of push notifications through Amazon SNS at the exact same time.
We are continuing to evolve Taplytics to enable companies to work better together by giving each team member the tools to move quickly and iterate constantly. Taplytics allows teams to be the drivers of their development cycles without having to wait for App Store updates to make changes to their mobile apps. We are continuing to focus on our core competency by building a mobile optimization platform that allows our customers to create app experiences their customers love.