![How to Build a Web App with and without Rails Libraries](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210525_72ppi_03_HowtoBuildaWebAppwithandwithoutRailsLibraries.jpg?v=1623688086&width=600)
Search results for “performance”:
![How to Build a Web App with and without Rails Libraries](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210525_72ppi_03_HowtoBuildaWebAppwithandwithoutRailsLibraries.jpg?v=1623688086&width=600)
![Pair Programming Explained](https://cdn.shopify.com/s/files/1/0779/4361/articles/developer-reviewing-javascript.jpg?v=1558450085&width=600)
Pair Programming Explained
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220428_72ppi_05_TheNextGenerationOfYJIT-PortingYJITToRust.jpg?v=1653421689&width=600)
Our Experience Porting the YJIT Ruby Compiler to Rust
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220411_216ppi_05_CodeRanges-ADeeperLookAtRubyStrings.jpg?v=1676658509&width=600)
The Case Against Monkey Patching, From a Rails Core Team Member
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/server-wires.jpg?v=1704987717&width=600)
Horizontally scaling the Rails backend of Shop app with Vitess
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/DatabaseLogging.jpg?v=1598479077&width=600)
How to Track State with Type 2 Dimensional Models
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/in-office-working-on-laptop_617cee5e-bde8-4a47-b3f8-53edf736a7d3.jpg?v=1613506241&width=600)
Using Betas to Deploy New Features Safely
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/In-Context_Orders_Blogpost_Header_-_1024x538px-1.png?format=jpg&quality=90&v=1621968017&width=600)
How Shopify Built An In-Context Analytics Experience
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211026_216ppi_04_HowToBuildABusinessSystemIntegrationAutomationPlatformAtShopify.jpg?v=1650656184&width=600)
Building a Business System Integration and Automation Platform at Shopify
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210525_72ppi_06_BuildingaDataTableComponentinReact_89082c79-8695-4336-a8ba-e9bfda6c7e2c.jpg?v=1656097170&width=600)
Perspectives on Onboarding: Joining Shopify as an Engineering Leader
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220901_216ppi_06_HowToWriteCodeWithoutHavingToReadIt.jpg?v=1670857627&width=600)
Automatically Rotating GitHub Tokens (So You Don’t Have To)
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_ComplexDataModelsShopifyTax.jpg?v=1675449874&width=600)
The Complex Data Models Behind Shopify's Tax Insights Feature
![A black monolith with different coloured lines representing code. The monolith sits on the right hand side of the screen with a desert background.](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210525_72ppi_04_UnderDeconstruction-TheStateofShopifysMonolith.jpg?v=1623684285&width=600)
Under Deconstruction: The State of Shopify’s Monolith
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/churn_large_db203696-6c14-4396-8f36-74a2584743db.jpg?v=1494964840&width=600)
Defining Churn Rate (no really, this actually requires an entire blog post)
![Shopify Developers Share Lessons on Self-Advocacy and Dealing with Adversity in the Technology Industry](https://cdn.shopify.com/s/files/1/0779/4361/articles/a-woman-immersed-in-her-laptop-and-monitor_4460x44_622a41533811b8575e85f3fdd3b24393.jpg?v=1556047365&width=600)
Shopify Developers Share Lessons on Self-Advocacy and Dealing with Adversity in the Technology Industry
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/woman-relaxed-work.jpg?v=1581320285&width=600)
Great Code Reviews—The Superpower Your Team Needs
![How to Make Dashboards Using a Product Thinking Approach](https://cdn.shopify.com/s/files/1/0779/4361/articles/startup-desktop.jpg?v=1611857167&width=600)
How to Make Dashboards Using a Product Thinking Approach
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211026_72ppi_01_UsingPropensityScoreMatchingToUncoverShopifyCapitalsEffectOnBusinessGrowth.jpg?v=1639078901&width=600)
Using Propensity Score Matching to Uncover Shopify Capital’s Effect on Business Growth
![Hydrogen & Tailwind: The Perfect Match for Building Beautiful Storefronts](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220111_72ppi_01_HydrogenAndTailwind-ThePerfectMatchForBuildingBeautifulStorefronts.jpg?v=1645033312&width=600)
Hydrogen & Tailwind: The Perfect Match for Building Beautiful Storefronts
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220216_72ppi_06_ADataScientistsGuideToMeasuringProductSuccess.jpg?v=1649706738&width=600)
A Data Scientist’s Guide To Measuring Product Success
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220927_72ppi_04_OnFeedback.jpg?v=1666185746&width=600)
A Software Engineer’s Guide to Giving Feedback that Actually Matters
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/fingers-turning-dial-on-dj-board.jpg?v=1607444348&width=600)
How to Reliably Scale Your Data Platform for High Volumes
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/car-99-takes-the-lead-in-a-blur-of-speed_6f31a4e3-3a2e-4218-ad81-52e8c1d2eaa6.jpg?v=1614108132&width=600)
Keeping Developers Happy with a Fast CI
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_221018_72ppi_01_TheManagementPolesOfDeveloperInfrastructureTeams.jpg?v=1667611867&width=600)
The Management Poles of Developer Infrastructure Teams
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/shopify-rails-stack.png?format=jpg&quality=90&v=1533668622&width=600)
E-Commerce at Scale: Inside Shopify's Tech Stack - Stackshare.io
![Building a Data Table Component in React](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210525_72ppi_06_BuildingaDataTableComponentinReact.jpg?v=1623688255&width=600)
Building a Data Table Component in React
![Reusing Code with React Native Packages at Shopify](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210630_72ppi_06_ReactNativePackagesAtShopify.png?format=jpg&quality=90&v=1632843288&width=600)
Reusing Code with React Native Packages at Shopify
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211008_72ppi_04_DebuggingsystemsintheCloud-MySQLKubernetesandCgroups_700ca906-da61-4e43-93c2-351e18947ed6.jpg?v=1657898065&width=600)
Spin Infrastructure Adventures: Containers, Systemd, and CGroups
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220411_72ppi_03_SkiaAnnouncement_a40cc9c0-96cd-4e0e-8f56-6dd46a6f9dec.jpg?v=1671558311&width=600)
React Native Skia: A Year in Review and a Look Ahead
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220411_72ppi_01_ImplementingEqualityInRuby.jpg?v=1653388463&width=600)
Implementing Equality in Ruby
![How Shopify Uses Recommender Systems to Empower Entrepreneurs](https://cdn.shopify.com/s/files/1/0779/4361/articles/startup-desktop_4460x4460_2.jpg?v=1548438144&width=600)
How Shopify Uses Recommender Systems to Empower Entrepreneurs
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/products-shine-retail-kit-large-af9e68ae189b30710358625931e48311f1cc0a7ef9c8951f0f65d5aabf6b69e1_1.jpg?v=1559760299&width=600)
Implementing Android POS Receipt Printing on Shopify
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/laptop_half_screen_3_copy.jpg?v=1582642515&width=600)
Creating Native Components That Accept React Native Subviews
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211026_72ppi_05_RemoteRenderingShopifysTakeOnExtensibleUI.jpg?v=1639078832&width=600)
Remote Rendering: Shopify’s Take on Extensible UI
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220411_72ppi_04_Mobius-TheOneEdge.jpg?v=1651176259&width=600)
Möbius: Shopify’s Unified Edge
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220927_72ppi_03_BuildingShopifysNewFlexCompSystem.jpg?v=1666044315&width=600)
The Engineering Story Behind Flex Comp
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/Screen_Shot_2015-01-28_at_2.25.15_PM_grande_198721a9-aced-4b68-8301-02a2f56a199f.png?format=jpg&quality=90&v=1495031672&width=600)
Building and Testing Resilient Ruby on Rails Applications
![Building Resilient GraphQL APIs using Idempotency](https://cdn.shopify.com/s/files/1/0779/4361/articles/computer_screen_close_up_shallow_depth_1.jpg?v=1566930854&width=600)
Building Resilient GraphQL APIs Using Idempotency
![4 Tips for Shipping Data Products Fast](https://cdn.shopify.com/s/files/1/0779/4361/articles/subway-tunnel-speed-vortex.jpg?v=1614706084&width=600)
4 Tips for Shipping Data Products Fast
![When is JIT Faster Than A Compiler?](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_211008_72ppi_03_GitHubDoesMyOperationsHomeworkA-RubySpeedStory_c1ed4a99-a1a5-4545-9ea1-904b4aa92c77.jpg?v=1660224761&width=600)
When is JIT Faster Than A Compiler?
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_221107_216ppi_01_MixingItUpRemixJoinsShopifyToPushTheWebForward.jpg?v=1669215623&width=600)
Mixing It Up: Remix Joins Shopify to Push the Web Forward
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_210614_72ppi_06_DeletingTheUndeletable.jpg?v=1625687599&width=600)
Schematizing Deletion at Scale
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/lb-image.png?format=jpg&quality=90&v=1486574861&width=600)
Surviving Flashes of High-Write Traffic Using Scriptable Load Balancers (Part I)
![Pagination with Relative Cursors](https://cdn.shopify.com/s/files/1/0779/4361/articles/laptop_alone_1.jpg?v=1565628852&width=600)
Pagination with Relative Cursors
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/header_2000x_b325e958-0015-4589-bb61-8493de822f4d.jpg?v=1599593909&width=600)
Tophatting in React Native
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/Shop_Eng_Blog_Header.png?format=jpg&quality=90&v=1616070726&width=600)
Remove Circular Dependencies by Using Dependency Injection and the Repository Pattern in Ruby
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ShopifyEng_BlogIllustrations_220111_72ppi_06_ReactServerComponentsPatternsAndBestPracticesWithHydrogen.jpg?v=1644442762&width=600)
React Server Components Best Practices You Can Use with Hydrogen
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/coding-on-laptop_4460x4460_2ba0f25e-d153-4cc7-a931-05961430eecc.jpg?v=1521214533&width=600)
Tuning Ruby's Global Method Cache
![](https://cdn.shopify.com/s/files/1/0779/4361/articles/ruby.jpg?v=1495827899&width=600)
Bootsnap: Optimizing Ruby App Boot Time
![How Shopify Merchants can Measure Retention](https://cdn.shopify.com/s/files/1/0779/4361/articles/business-team-meeting-boardroom_4460x4460_b6455100-218a-4058-bad1-ecbed64c6fcb.jpg?v=1510680011&width=600)