nayaread
HomeFavouritesTopicsSources
HomeFavouritesTopicsSources
NayaRead links to original engineering blogs. All copyright belongs to the respective authors.
Shopify Engineering·Mar 17, 2022·10 min read46

Using Terraform to Manage Infrastructure - Shopify

Large applications are often a mix of code your team has written and third-party applications your team needs to manage. These third-party applications could be things like AWS or Docker. In my team’s case, it’s Twilio TaskRouter. The configuration of these services may not change as often as your app code does, but when it does, the process is fraught with the potential for errors. This is because there is no way to write tests for the changes or easily roll them back–things we depend on as developers when shipping our application code. Using Terraform improves your infrastructure management by allowing users to implement engineering best practices in what would otherwise be a GUI with no accountability, tests, or revision history. On the Conversations team, we recently implemented Terraform to manage a piece of our infrastructure to great success. Let’s take a deeper look at why we did it, and how. My team builds Shopify’s contact center. When a merchant or partner interacts with an agent, they are likely going through a tool we’ve built. Our app suite contains applications we’ve built in-house and third-party tools. One of these tools is Twilio TaskRouter. TaskRouter is a multi-channel skill-based task routing API. It handles creating tasks (voice, chat, etc.) and routing them to the most appropriate agent, based on a set of routing rules and agent skills that we configure. As our business grows and becomes more complex, we often need to make changes to how merchants are routed to the appropriate agent. Someone needs to go into our Twilio console and use the graphic user interface (GUI) to update the configuration. This process is fairly straightforward and works well for getting off the ground quickly. However, the complexity quickly becomes too high for one person to understand it in its entirety. In addition, the GUI doesn’t provide a clear history of changes or a way to roll them back. As developers, we are used to viewing a commit history,

CloudDevOps
Read original on shopify.engineering

Score breakdown

  • Technical depth82
  • Practical value30
  • Originality60
  • Writing quality100
  • Source reputation0
  • Recency0
  • External engagement0
  • On-site engagement0

NayaRead shows a summary and links to the original article. The full article is hosted on shopify.engineering.

More like this

Stripe Engineering

Configuring Stripe using Terraform and AI agents

Michael Selander·Jan 27, 2026·1 min read
Slack Engineering

Managing context in long-run agentic applications

Dominic Marks·Apr 13, 2026·13 min read
Etsy — Code as Craft

Kafka App? There’s a Skill for That

Isobel Scott·Jul 31, 2026·6 min read
The Cloudflare Blog

How we use HashiCorp Nomad

Jun 5, 2020·16 min read