I am looking for some good books or detailed courses on system design which are targeted for Mobile engineers specifically.
I actually made a 10-part course about that! You can watch it here: System Design Masterclass: Taro Playlists
I tried to make the content as broad as possible by covering:
The content is largely derived from my experience working at Meta and Robinhood, so it should be largely applicable to your work at Amazon. Unless your team has a really well-defined doc format already, you could probably copy-paste my design doc style directly into your own projects (the link is in Part 3 and beyond as those are Taro Premium exclusive).
That being said, my advice is to treat system design resources as inspiration, not prescription. There are many ways to build good software: Pretty much every FAANG company has its own way of doing things. I'm sure your org at Amazon has a certain engineering style, so do your best to weave into that as much as possible.
If you're on the Android side of the fence, I highly recommend this discussion where I cover a lot of Android-specific design patterns: "How can I get really good at Android?"
Here are some other great resources around system design:
Zooming out a bit, the learning while building any software product will increase the more users it has. This is very true on mobile with its huge combination of device variety and OS versions, and it's especially true for Android.
If you want to learn how to build mobile side projects that get 100,000+ users, check out my in-depth guides here:
I also open-source almost all of the code I write, so if you want to get really hands-on, here's the links to my most recent repos:
I follow Instagram's engineering philosophy of "Do the simple thing first", so both repos are native Kotlin/Swift using basic system design techniques like modularization and delegate pattern. I use MVC for Android and iOS is SwiftUI which is MVVM.
If you're interested in learning more about Instagram's engineering culture, we made a video about it here: How To Properly Learn To Code As A Software Engineer - Do The Simple Thing First
I heard Amazon relies more on a WebView-style though, and it doesn't have a ton of pure native mobile development. YMMV with these resources alongside online system design resources in general. This will happen a lot at Big Tech where the tech stack is so custom.
If you're interested in the trade-offs between cross-platform and native, check out this discussion: Android (Kotlin) vs. React Native