Tictail was founded by four Stockholm residents who wanted to help entrepreneurs set up and grow their businesses simply from any location in the world. The company, which works closely with retailers to remove the technical challenges involved in selling their products online, launched in 2012. Today it hosts 100,000 stores that offer more than two million products.
From its inception, Tictail has run its infrastructure on Amazon Web Services (AWS). Siavash Ghorbani, co-founder and chief technology officer, describes the decision to start in the cloud rather than build and maintain a data center as “a no brainer .”
Tictail started with just two engineers. “At that stage we wanted to avoid running our own data center so we could focus on creating an innovative product,” says Ghorbani. “We had a fully formed vision of where we wanted to go with the product, but the path to that goal was not always clear.”
Working in the AWS cloud allowed Tictail to experiment with architectures and route small amounts of traffic into prototype features. The company's small team needed to work rapidly to get its initial product to market without the expense or time of managing a fixed infrastructure. “If we’d had to build and maintain a data center, we wouldn’t have been nearly as fast,” says Ghorbani. “Plus, we didn’t spend any money on hardware or the personnel costs of running a data center.”
Why Amazon Web Services
Ghorbani and his colleagues benchmarked AWS against other providers on the market, and decided that the AWS features and capabilities were “way ahead of the competition.”
The company’s cloud infrastructure has gone through a number of iterations as the services Tictail offers have been refined and as its customer base has grown. The company began with Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3), but grew to incorporate Elastic Load Balancing to distribute traffic across Amazon EC2 instances in multiple Availability Zones. It also uses Amazon ElastiCache to deploy, operate, and scale in-memory cache in the cloud.
The Tictail cloud infrastructure sits within Amazon Virtual Private Cloud (Amazon VPC). “Today, we route traffic as different services, each one responsible for a set of APIs in some part of the product,” says Ghorbani. “All of these are hosted on Amazon EC2.”
Amazon EC2 instances are set up in Auto Scaling groups so they can automatically scale parts of an API up or down according to demand. All databases at Tictail are hosted using Amazon Relational Database Service (Amazon RDS), and Amazon Redshift is used for data warehousing.
According to Ghorbani, “The best illustration of our success with AWS is the fact that we’ve grown to support 100,000 stores—offering over two million products—without owning a single piece of hardware. Without the cloud this wouldn’t have been possible in just three years.”
Tictail values how easy AWS makes it for engineers to deploy changes quickly. Typically, it rolls out 20 to 25 features a day, accomplishing this by experimenting and refining its processes. Each production team is entirely autonomous, having the skills to conceive, design, and bring a feature into production.
“The way we build features is to have an idea and roll that out to a subset of the user base,” says Ghorbani. He adds that each team measures to see if the features they’re responsible for are improving key performance indicators. “If it’s positive, we start scaling out the feature. If it’s negative, we want to reduce its impact and work out what worked and what didn’t work.”
This requires a very fast development and deployment process, plus the ability to roll changes back if needed. “I feel we’re in a very good place when it comes to development speed and ease of use,” says Ghorbani. “Now we can deploy and rollback in seconds.”
Tictail faces competition in the e-commerce market, but has managed to gain a foothold through its speed and agility—something that many of its competitors can’t match.
“Our staff spends time on the application-level infrastructure and not on the physical infrastructure,” Ghorbani says. “Having to worry about optimizing a hardware stack would have huge implications on our speed of delivery. By working in the cloud, we’re able to add resources as we go.”
Ghorbani also says that migrating to Auto Scaling groups has made life a lot easier for Tictail—especially its engineers. “Previously, we’d have to initiate an instance manually. Today, we can do that automatically and set scaling parameters to respond to our needs,” he says. “An engineer can easily go into the AWS console and add five more services for a test.”
He adds that this task has gone from a manual process that used to take between 30 and 60 minutes to an automated one that takes just seconds. “We love automation. Treating infrastructure as software has allowed us to solve challenges by automation rather than using our time to figure out workarounds,” Ghorbani says. “By the time a person would even realize there is an ongoing issue in the infrastructure, automated software has already solved it.”
“The best illustration of our success with AWS is the fact that we’ve grown to support 100,000 stores—offering over two million products—without owning a single piece of hardware.”
Siavash Ghorbani, CTO