Amazon app & webviews

Facebook / Eng
loderunner

Facebook Eng

PRE
Google
loderunnermore
Jul 10, 2018 6 Comments

The Amazon app heavily uses webviews. I find it surprising that the rest of the industry is messing around with React Native and Flutter, yet meanwhile Amazon seems to have solved the problem of cross-platform fast mobile app development. I'd love to hear what the experience has been, and whether the webviews have been delightful or horrible?

comments

Want to comment? LOG IN or SIGN UP
TOP 6 Comments
  • Amazon / Eng Fghfswjbc
    I’ve been a native iOS/Android developer for 9 years, and as much as I hate to admit it, the webview approach has worked well for the Amazon shopping app. If you add up all the engineers that work on the app plus webviews for the app, it is probably over 1000. If all those engineers were contributing native code into a single app binary, I think managing each app release would be a nightmare. A bug in a single native feature could delay the app release for everyone else, there would be numerous patches required, etc.

    That said, the Amazon shopping app is an exception, and the webview approach is really the best choice given the organizational structure of Amazon (teams are broken up by feature, not by platform). Generally, I think native is really the best approach (over webviews or ReactNative). The recent Airbnb post does an excellent job explaining why.

    Lots of other teams in Amazon use ReactNative, mostly because Amazon is a company of web developers who are most comfortable with web frameworks. I think building natively would result in apps with better user experiences, but in order for that to happen at Amazon, we would have to shift our hiring process to target engineers with strong native app development backgrounds, instead of only hiring people who can also build a scalable backend system.
    Jul 10, 2018 2
    • Facebook / Eng
      loderunner

      Facebook Eng

      PRE
      Google
      loderunnermore
      OP
      Great response, thanks. What does Amazon gain from an app, if all you do is put the (excellent) mobile website in a webview? At that point, just discard the app and push the mobile website -- it's less friction and the experience is the same no?
      Jul 10, 2018
    • Amazon / Eng Cfcvawwq
      Camera scan barcodes/gift cards/products/etc

      Push notifications that my package was shipped/delivered

      Voice search with Alexa

      Etc
      Jul 10, 2018
  • Microsoft / Eng GalaxyQ
    The majority of cross platform frameworks are garbage and you can feel it when you're using an app. The teams that have "solved" this are the teams that are building native components. Yes it takes more time, but for a better product.

    Native > "native" cross platform frameworks > web frameworks
    Jul 10, 2018 1
    • Amazon / Eng Fghfswjbc
      ^^^^So true
      Jul 10, 2018
  • Amazon / Eng mezos
    There are definitely teams who use react here, idk any who use flutter personally though. As an example, profile uses react, while reviews uses the webview. I wouldn't say it's a solved problem here. We have an internal framework that implements native features and it's not feature complete. It just has what we need I think

    Hope that helps. I've been here 2 years and that's my take on it so far.
    Jul 10, 2018 0