![](https://cdn.shopify.com/s/files/1/0779/4361/articles/shopify_logo_black_ff95b40b-fe43-4ed3-bdce-e8e32f29206f.png?format=jpg&quality=90&v=1501534668&width=600)
Search results for “Jean Boussier”:
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/shopify_logo_black_ff95b40b-fe43-4ed3-bdce-e8e32f29206f.png?format=jpg&quality=90&v=1501534668&width=600)
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/Production_Engineering_1.jpeg?v=1494879582&width=600)
Automatic Deployment at Shopify
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220411_216ppi_02_RubyExecutionModels.jpg?v=1653485716&width=600)
To Thread or Not to Thread: An In-Depth Look at Ruby’s Execution Models
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/Our_Favorite_Moments_From_RailsConf_2022.jpg?v=1653428464&width=600)
Our Favorite Moments From RailsConf 2022
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220927_72ppi_06_CachingWithoutMarshal.jpg?v=1668048444&width=600)
Caching Without Marshal Part 1: Marshal from the Inside Out
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220927_72ppi_06_CachingWithoutMarshal-ALT.jpg?v=1668465298&width=600)
Caching Without Marshal Part 2: The Path to MessagePack
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211008_216ppi_02_TryOutYJITforFasterRubying.jpg?v=1673882706&width=600)
Ruby 3.2’s YJIT is Production-Ready
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/GCfixed.png?format=jpg&quality=90&v=1681399892&width=600)