Home/Shopify Engineering
Source

Shopify Engineering

305 articles from Shopify Engineering.

AI & ML — Shopify’s Unique Data Science Hierarchy Of Needs - Shopify

Shopify’s Unique Data Science Hierarchy Of Needs - Shopify

You’ve probably seen the “Data Science Hierarchy of Needs” (pictured below) before. Inspired by Maslow, it shows the tooling you would use at different levels in data science—from logging and user-generated content at the bottom, to AI and deep learning at the very top. While hierarchies like this one can serve as helpful guides, at Shopify, we don’t think it always captures the whole picture. For

SEShopify Engineering·December 21, 2021AI & ML
Databases — Upgrading MySQL at Shopify - Shopify

Upgrading MySQL at Shopify - Shopify

Learn how the Database Platform team performed the most recent MySQL upgrade at Shopify and how this changed our upgrade guidelines moving forward.

SEShopify Engineering·December 2, 2021Databases
Performance — Reusing Code with React Native Packages at Shopify - Shopify

Reusing Code with React Native Packages at Shopify - Shopify

At Shopify, we develop a bunch of different React Native mobile apps: Shop, Inbox, Point of Sale, Shopify Mobile, and Local Delivery. These apps represent different business domains, but they often have shared pieces of functionality like login or foundational blocks they build upon. Wouldn’t it be great to leverage development speed and focus on important product features by reusing code other te

SEShopify Engineering·September 29, 2021Performance
Career & Teams — Modelling Developer Infrastructure Teams - Shopify

Modelling Developer Infrastructure Teams - Shopify

I’ve been managing Developer Infrastructure teams (alternatively known as Developer Acceleration, Developer Productivity, and other such names) for almost a decade now. Developer Infrastructure (which we usually shorten to “Dev Infra”) covers a lot of ground, especially at a company like Shopify that’s invested heavily in the area, from developer environments and continuous integration/continuous

SEShopify Engineering·August 13, 2021Career & Teams
Engineering — Bridging the Gap Between Developers and End Users - Shopify

Bridging the Gap Between Developers and End Users - Shopify

In every business, regardless of industry, it is important to keep an open communication line between the consumer and the producer. In the tech world, this line of communication comes in the form of customer support, chatbots, or contact forms.

SEShopify Engineering·August 11, 2021Engineering
Engineering — Shopify-Made Patterns in Our Rails Apps - Shopify

Shopify-Made Patterns in Our Rails Apps - Shopify

At Shopify, we’ve developed our own patterns in order to support our global platform. Before coming here, I've developed multiple Ruby (and Rails) applications at multiple growth stages. Because of that, I quickly came to appreciate some workarounds and automation that were created to support the large codebase of Shopify. If there’s something I appreciate about Ruby on Rails, it’s the principle o

SEShopify Engineering·July 13, 2021Engineering
Engineering — How Shopify Built An In-Context Analytics Experience - Shopify

How Shopify Built An In-Context Analytics Experience - Shopify

Whether determining which orders to fulfill first or assessing how their customer acquisition efforts are performing, our merchants rely on data to make informed decisions about their business. In 2013, we made easy-access to data a reality for Shopify merchants with the Analytics.

SEShopify Engineering·May 25, 2021Engineering
Career & Teams — Other Driven Developments - Shopify

Other Driven Developments - Shopify

Mental models within an industry, company, or even a person, change constantly. As methodologies mature, we see the long term effects our choices have wrought and can adjust accordingly. As a team or company grows, methodologies that worked well for five people may not work as well for 40 people.

SEShopify Engineering·May 21, 2021Career & Teams
Career & Teams — Three Ways We Share Context at Shopify Engineering - Shopify

Three Ways We Share Context at Shopify Engineering - Shopify

To do your best work as a developer, you need context. A development community thrives when its members share context as a habit. That's why Shopify Engineering believes that sharing context is vital to our growth and success—as a company, as a team, and as individuals. Context is an abstract term, and we use it to refer to the why, what, and how of our development philosophies, approaches, and ch

SEShopify Engineering·May 13, 2021Career & Teams
Career & Teams — How I Define My Boundaries to Prevent Burnout - Shopify

How I Define My Boundaries to Prevent Burnout - Shopify

There’s a way to build a model for your life and the other demands on you. It doesn’t have to be 100 hours a week. It might not even be 40 hours a week. Whatever sustainable model you come up with, prioritize fiercely and communicate expectations accordingly. I’ve worked this way for three decades through different phases of my life. The hours have changed, but the basic model and principles remai

SEShopify Engineering·May 6, 2021Career & Teams
Engineering — A Five-Step Guide for Conducting Exploratory Data Analysis - Shopify

A Five-Step Guide for Conducting Exploratory Data Analysis - Shopify

Have you ever been handed a dataset and then been asked to describe it? When I was first starting out in data science, this question confused me. My first thought was “What do you mean?” followed by “Can you be more specific?” The reality is that exploratory data analysis (EDA) is a critical tool in every data scientist’s kit, and the results are invaluable for answering important business questio

SEShopify Engineering·April 28, 2021Engineering
Databases — Dynamic ProxySQL Query Rules - Shopify

Dynamic ProxySQL Query Rules - Shopify

Resiliency is important at Shopify and although we have many tools to help us during incidents, some problems need to be fixed at the database level. At Shopify, we use ProxySQL to manage connections between applications and our MySQL databases

SEShopify Engineering·April 20, 2021Databases
Performance — How Shopify Dynamically Routes Storefront Traffic - Shopify

How Shopify Dynamically Routes Storefront Traffic - Shopify

In 2019 we set out to rewrite the Shopify storefront implementation. Our goal was to make it faster. We talked about the strategies we used to achieve that goal in a previous post about optimizing server-side rendering and implementing efficient caching. To build on that post, I’ll go into detail on how the Storefront Renderer team tweaked our load balancers to shift traffic between the legacy sto

SEShopify Engineering·April 9, 2021Performance
Security — Updates on Shopify's Bug Bounty Program 2021 - Shopify

Updates on Shopify's Bug Bounty Program 2021 - Shopify

For three years we, Shopify’s Application Security team, have set aside time to reflect on our bug bounty program and share recent insights. This past year has been quite a ride, as our program has been busier than ever! We’re excited to share what we have learned, and share some of the great things we have planned!

SEShopify Engineering·March 11, 2021Security