Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building apps at Shopify with React Native + Ko...

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Bruno Aybar Bruno Aybar
November 14, 2025
10

Building apps at Shopify with React Native + Kotlin Multiplatform

Building mobile apps is hard, and the technical landscape changes constantly. At Shopify, we've gone "all-in" on React Native as our default for mobile development. But what happens when you hit the limitations? What about ultra-high performance needs, extensive processing, or heavy background tasks ?

This talk is a real-world case study of our "React Native-first" approach and how we pragmatically solve its limitations by integrating Kotlin Multiplatform (KMP). We will demonstrate that "context matters" and that the best solution is often a hybrid one.

Avatar for Bruno Aybar

Bruno Aybar

November 14, 2025
Tweet

Transcript

  1. Context matters a lot when taking tech decisions. Building mobile

    apps is hard. Mobile landscape changes frequently.
  2. • Discuss every single pitfalls of a given technology. •

    Try to convince you that React Native is the best approach out there. • Try to convince you that Kotlin Native is the best approach out there. • Specifics about how we do React Native / KM at Shopify. Out of the scope of this talk...
  3. - Farhan Thawar, 2020 React Native is the Future of

    Mobile at Shopify Public blog post: https://shopify.engineering/react-native-future-mobile-shopify
  4. 2020 Shopify officially goes RN-first 2021 5 fully RN apps

    Still a handful native apps 2018 - Experimentation - Shop (prev: Arrive) written in RN. - POS Android written in RN. - Compass (deprecated) written in RN. - Analysis: - Native vs Flutter vs RN Brief but company-wide RN experimentation 2015
  5. Three key areas: - Developer Support / Happiness - Maintainability

    - Performance / User Experience Framework comparison
  6. - Farhan Thawar, 2020 React Native is the Future of

    Mobile at Shopify Public blog post: https://shopify.engineering/react-native-future-mobile-shopify
  7. There are situations where React Native would not be the

    default option for building a mobile app at Shopify: • deploying on older hardware (CPU <1.5GHz) • extensive processing • ultra-high performance • many background threads. When Will We Not Default to Using React Native?
  8. There are situations where React Native would not be the

    default option for building a mobile app at Shopify: • deploying on older hardware (CPU <1.5GHz) • extensive processing • ultra-high performance • many background threads. When Will We Not Default to Using React Native?
  9. - Point of Sale (POS) app - A huge #

    of background processes to keep data up to date. - JS implementation was slow! And when jobs were running the app was unresponsive. Native Sync overview
  10. Goals: - Increase responsiveness to provide merchants a better experience.

    - Provide same experiences across platforms by reusing code. Introducing KMM
  11. 2020 Shopify officially goes RN-first 2021 "Management of Native Code

    and React Native at Shopify" 2019 Internal research: "Kotlin Native At Shopify"
  12. Some key areas of research: • How much code can

    be shared • Infrastructure • Concurrency model • Memory management • Compiler implications • Runtime performance
  13. Regarding the research: • Conducted by experts in native mobile

    technologies. • Back then, Kotlin Native was still experimental and the roadmap was still not fully settled. • Shopify worked closely with Kotlin Native teams, back when it was still experimental.
  14. - 4-5 Internal SDKs were developed as multiplatform libs and

    are still being used. - Those libs mostly deal with "lower level" integrations for which we still have business logic to be shared. - More info, see the Native section of "How We Write React Native Apps" Building native code with KMP
  15. - Internal research: "Kotlin Native At Shopify" - Multiple native,

    multiplatform libs that pre-date full RN adoption. 2020 Shopify officially goes RN-first 2021 "Management of Native Code and React Native at Shopify" 2019
  16. Using KMP in the context of a RN-first project... …

    but also within the context of an standard native project Building native code with KMP
  17. Context matters a lot when taking tech decisions. Building mobile

    apps is hard. Mobile landscape changes frequently.
  18. Resources • React Native is the Future of Mobile at

    Shopify (article): https://shopify.engineering/react-native-future-mobile-shopify • How We Write React Native Apps (video): https://shopify.engineering/shipit-writing-react-native-apps • Management of Native Code (article): https://shopify.engineering/managing-native-code-react-native