BlogsShopifyCompensation System Engineering

Compensation System Engineering

Compensation System Engineering

1
posts
2022

Shopify has engineered a new compensation system called Flex Comp, which allows employees to customize their total rewards allocation between base salary, RSUs, and stock options. This involved building a new user interface, establishing robust API contracts, and implementing advanced privacy controls for sensitive compensation data. Key technical challenges included secure eventing for analytics, managing large RSA key pairs for encryption, and designing an extensible front-end architecture to handle regional and employment-based regulatory differences. The system prioritizes data integrity, user accessibility, and parallel development.

2022

The Engineering Story Behind Flex Comp - Shopify

10/5/2022

This post details the engineering story behind Shopify's Flex Comp compensation system. It covers the technical implementation of a new UI for reward allocation, the establishment of API contracts between front-end and back-end teams, and the implementation of privacy controls through a dedicated GitHub organization and team structure. A significant technical contribution is the use of asymmetric encryption (RSA 4096/6144 bit keys) for sensitive compensation event payloads sent to Kafka, with a discussion of trade-offs and a proposed hybrid symmetric/asymmetric encryption approach for future improvements. The post also outlines the front-end development principles of optimizing for parallelization and maintaining a single source of truth for data and calculations.