话题公司 › Shopify

公司:Shopify

Shopify Inc.是加拿大的一家跨国电子商务公司,总部位于安大略省渥太华,Shopify也是该公司所有的电子商务平台的名称。Shopify为在线零售商提供一整套服务“包括支付、市场营销、运输和客户契合工具,以简化小型商户开设在线商店的过程”。

根据公司披露的文件,截止2019年6月,Shopify平台在大约175个国家或地区有超过一百万笔业务,2020日历年的商品总成交额1196亿美元,较2019年增长96%。

On the Importance of Pull Request Discipline

Unorganized pull requests are the bane of large codebases. Follow Yash's tips to prevent your PRs from getting roasted in the group chat.

How to Write Code (Without Having to Read It)

Do we need to read code before editing it? In order to safely fix a bug or update a feature, we may need to learn some things about the code. However, we’d prefer to learn only that information.

Safely Adding NOT NULL Columns to Your Database Tables

The Database Migrations team is in charge of creating and maintaining all the internal tools for Shopify teams to carry out schema changes safely and with minimal downtime. One of our latest investigations involved using the popular Large Hadron Migrator (LHM) gem to perform schema changes in MySQL databases, after safety-checking that the migrations can be performed without losing any data. In particular, when adding a NOT NULL columns to an existing table.

In this post, I'll share what we learned and our recommendations for doing so to your own database tables.

Lessons From Building Android Widgets

Shopify share with you the challenges we faced building Android widgets and how we solved them.

Lessons From Building iOS Widgets

Shopify shares with you how we approached building iOS widgets and some of the challenges we faced.

Managing React Form State Using the React-Form Library

We’ll delve further into Shopify’s open source Quilt repo that contains 72 npm packages, one of which is the react-form library.

Leveraging Go Worker Pools to Scale Server-side Data Sharing

How Shopify scaled our Server Pixels service to increase its event processing performance by 170%.

Four Approaches to Debugging Server-side WebAssembly

Shopify Functions enables customizing the business logic of Shopify’s back end with server-side WebAssembly. There are many benefits to using a WebAssembly environment to host these customizations such as low cold-start latency and robust security compared to other alternatives. However, WebAssembly poses new challenges when debugging. These challenges aren’t unique to Shopify Functions and are common to other uses of WebAssembly including other server-side use cases. One of these challenges is a less refined developer experience when using step debuggers.

Step debuggers allow developers to pause execution on certain lines of code given certain conditions, execute lines of code one at a time, descend and ascend the current callstack, and see the values of in-scope variables at a particular point in execution. This flexibility can reduce the amount of time it takes to find a problem compared to debugging with print or log statements or studying the code. Some examples of step debuggers are GDB, LLDB, and the Visual Studio Debugger.

When Culture and Code Reviews Collide, Communication is Key

To prevent a misunderstanding, it’s important for developers to understand how different cultures approach reviewing codes, and how diverse teams can establish healthier communication practices when giving and receiving feedback. When we understand each other’s context, the emphasis can shift from confrontation to collaboration, from perfection to excellence.

Shopify Data’s Guide To Opportunity Sizing

Shopify’s guide to Opportunity Sizing, a method that data scientists can use to quantify the potential impact of an initiative ahead of making the decision to invest in it.

How We Enable Two-Day Delivery in the Shopify Fulfillment Network

A simplified overview of how we built two-day delivery in the Shopify Fulfillment Network (SFN).

Spin Cycle: Shopify’s SFN Team Overcomes a Cloud-Development Spiral

The process of getting SFN working on Spin, Shopify’s cloud-development tool, is a great example of the kind of hidden difficulty in technical work that's more related to human systems.

Mastering React’s Stable Values

In this post, Colin Gray, Principal Developer at Shopify, delivers a crash course in how to make sense of stable values in React and when they matter most.

10 Tips for Building Resilient Payment Systems

Top ten tips and tricks for building resilient payment systems from a Staff Developer working on Shopify’s payment infrastructure.

Data-Centric Machine Learning: Building Shopify Inbox’s Message Classification Model

Shopify Inbox is a single business chat app that manages all Shopify merchants’ customer communications in one place, and turns chats into conversions. As we were building the product it was essential for us to understand how our merchants’ customers were using chat applications. Were they reaching out looking for product recommendations? Wondering if an item would ship to their destination? Or were they just saying hello? With this information we could help merchants prioritize responses that would convert into sales and guide our product team on what functionality to build next. However, with millions of unique messages exchanged in Shopify Inbox per month, this was going to be a challenging natural language processing (NLP) task.

Our team didn’t need to start from scratch, though: off-the-shelf NLP models are widely available to everyone. With this in mind, we decided to apply a newly popular machine learning process—the data-centric approach. We wanted to focus on fine-tuning these pre-trained models on our own data to yield the highest model accuracy, and deliver the best experience for our merchants.

We’ll share our journey of building a message classification model for Shopify Inbox by applying the data-centric approach. From defining our classification taxonomy to carefully training our annotators on labeling, we dive into how a data-centric approach, coupled with a state-of-the-art pre-trained model, led to a very accurate prediction service we’re now running in production.

Spin Infrastructure Adventures: Containers, Systemd, and CGroups

The Spin infrastructure team works hard at improving the stability of the system. In February 2022 we moved to Container Optimized OS (COS), the Google maintained operating system for their Kubernetes Engine SaaS offering. A month later we turned on multi-cluster to allow for increased scalability as more users came on board. Recently, we’ve increased default resources allotted to instances dramatically. However, with all these changes we’re still experiencing some issues, and for one of those, I wanted to dive a bit deeper in a post to share with you.

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.124.0. UTC+08:00, 2024-04-25 09:25
浙ICP备14020137号-1 $访客地图$