CoinJar Builds World-Class Cryptocurrency Exchange on AWS

2020

CoinJar used AWS to build a fast and reliable digital currency exchange, ensure financial compliance and security best practices, and scale its platform within 5 minutes during spikes in API requests. CoinJar is Australia’s longest-running cryptocurrency and digital payments platform. It uses Amazon ECS to automate infrastructure deployment, Amazon Aurora as its primary relational database, and Amazon Rekognition to automate identity verification.

start a python tutorial
kr_quotemark

We see a lot of opportunities in the scalability of our products because we were built for a global market on AWS from day one.

Ryan Zhou
Cofounder and COO, CoinJar

Digital-First, Product-Focused

Despite their rising popularity, cryptocurrency platforms are still loosely regulated in most countries, and new entrants to the market regularly come and go. CoinJar, Australia’s longest-running digital currency exchange, has built a reputation for security and reliability since its founding in 2013. It’s one of more than 300 registered digital currency exchanges sanctioned by the Australian Transaction Reports and Analysis Centre (AUSTRAC), the country’s financial intelligence agency. To date, CoinJar has more than $75 million in digital assets and 450,000 customers, most of whom are based in Australia.

CoinJar is a cloud-native, digital-first company that launched on the Amazon Web Services (AWS) Cloud. Its three founders share a strong engineering background, and they chose AWS for its excellent security track record and global presence. As a startup, they also wanted to keep CoinJar product-focused. “Setting up with AWS couldn’t have been easier,” says Ryan Zhou, cofounder and chief operating officer at CoinJar. “We were able to onboard independently and could deploy our first web application on a world-class cloud platform within weeks.”

Ensuring Financial Compliance

CoinJar partners with banks, brokers, and other financial institutions to offer its products to customers. As such, it must ensure compliance with the Payment Card Industry Data Security Standard (PCI DSS) and provide a resilient disaster recovery plan.

The startup uses AWS Web Application Firewall (AWS WAF) to protect its web applications and Amazon Relational Database Service (Amazon RDS) to support disaster recovery through automated backups of its database. “We rely on AWS both to help with compliance requirements and to ensure we have a reliable infrastructure built with security best practices in mind,” Zhou says.

Scaling to Maintain Transaction Speed

Given the unpredictable nature of digital currency markets, scalability is particularly important for CoinJar. During periods of volatility, the platform experiences a spike in usage when its customers make simultaneous API requests. This can result in thousands of requests per second, which presents a significant technical challenge for small teams. However, by using AWS Auto Scaling and Elastic Load Balancing to manage heavy workloads, CoinJar is able to scale effectively with a team of seven IT and DevOps engineers.

Furthermore, with AWS, CoinJar’s platform can scale up or down within 5 minutes of spikes in API usage. Traffic is also evenly distributed across server instances to ensure uptime and latency targets during periods of high user activity. The founders consider speed to be a unique selling point for the company; any lag in its cryptocurrency exchange could deter customers from using the platform.

Automating Deployment with Containers

CoinJar needed to run quick experiments in a sandbox environment and develop prototypes promptly for ongoing product iterations. To remain competitive, CoinJar has been taking advantage of modern application services as they are introduced. The founders also wanted to reduce manual processes and looked at the use of containers to facilitate workload needs.

This led to CoinJar’s decision to migrate to a containerized infrastructure in 2017, using Amazon Elastic Container Service (Amazon ECS) to run its containers in a highly secure and scalable environment. “Being able to use Amazon ECS has been a tremendous help to us in scaling engineering,” Zhou says. “We were able to automate deployment of containers in a very efficient manner, which led us to fully automate infrastructure deployments.”

Additionally, CoinJar switched out of its MySQL database as soon as Amazon Aurora became available in Australia. With Amazon Aurora, engineers enjoy faster database performance and no longer spend time monitoring and manually scaling underlying storage and instance sizes. The company is also starting to use serverless architecture, with services such as AWS Lambda powering scalable microservices on the AWS Cloud. It uses these microservices to integrate sections of the CoinJar platform with third-party providers.

Halves Costs with ML-Powered Quality Checks

Traditionally, Know Your Customer (KYC) activities for financial institutions are time-consuming and laborious, and CoinJar previously relied on an in-house review team and external identity verification services to conduct customer fact-checking. The company recently switched to Amazon Rekognition to deliver faster identity verification services by automating IT document classification.

With Amazon Rekognition, CoinJar has achieved a 50 percent cost savings compared to its former manual verification method. It processes documents faster with an automated quality check, which cuts costs by classifying documents more accurately and rejecting those that are unlikely to pass verification. “Amazon Rekognition helped us automate a workflow that would otherwise require a very tedious model-building process. Furthermore, AWS provides an easy way for developers to use and establish a machine learning engine with pretrained models for onboarding common use cases,” Zhou says.

Growing the Business While Boosting Efficiency

In 2020, the founders expect to grow CoinJar’s services globally by increasingly turning to networking services, such as inter-region VPC peering, to accelerate the company’s applications in overseas markets, especially Europe. “There is quite a significant public network latency between Europe and Australia,” Zhou explains. “We can use AWS networking services to reduce that and deliver applications closer to our end users while retaining the simplicity of our current architecture. We see a lot of opportunities in the scalability of our products because we were built for a global market on AWS from day one.”

With its AWS Solutions Architect, the company continues to explore avenues for improving efficiency. Engineers have been able to cut costs by using Amazon EC2 Reserved Instances and improve performance by upgrading to newer AWS instance types. Zhou concludes, “It’s truly impressive the way AWS goes above and beyond to help customers reduce costs. We’ve demonstrated how managed services with AWS can benefit a relatively small company.”  


About CoinJar

Established in 2013, CoinJar is now Australia’s longest-running digital currency exchange. Its mission is to put digital currency into the hands of millions of people globally with best-in-class products and a user-friendly web and mobile platform.

Benefits

  • Ensures financial compliance and security best practices
  • Cuts costs by 50% with machine learning-driven identity verification 
  • Scales application in 5 minutes during spikes in API requests
  • Automates deployment of infrastructure and containers
  • Supports global expansion with cloud networking services


AWS Services Used

Amazon Rekognition

Amazon Rekognition makes it easy to add image and video analysis to your applications using proven, highly scalable, deep learning technology that requires no machine learning expertise to use.

Learn more »

Amazon Elastic Container Service

Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service. Customers such as Duolingo, Samsung, GE, and Cookpad use ECS to run their most sensitive and mission critical applications because of its security, reliability, and scalability.

Learn more >>

Amazon Aurora

Amazon Aurora is a MySQL and PostgreSQL-compatible relational database built for the cloud, that combines the performance and availability of traditional enterprise databases with the simplicity and cost-effectiveness of open source databases.

Learn more >>

AWS Auto Scaling

AWS Auto Scaling monitors your applications and automatically adjusts capacity to maintain steady, predictable performance at the lowest possible cost.

Learn more >>


Get Started

Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.