1

What are some of the best ways to practice and prepare for System Design rounds for Mobile Development (iOS Interviews)?

Profile picture
Senior Software Engineer at Slack7 months ago

I have Staff interviews lined up with FAANG companies and would like to learn from the best resources out there. What has helped you the most in your journey/experience?

131
3

Discussion

(3 comments)
  • 4
    Profile picture
    Tech Lead/Manager at Meta, Pinterest, Kosei
    7 months ago

    My Android system design for Facebook (Meta) back in 2017 was to talk through the implementation of the Newsfeed on Facebook Android.

    This was a huge problem (literally hundreds of engineers have been working on it, LOL), but the "answer" was less interesting than the discussion we had. We talked about the nuances of RecyclerView and how we'd structure the data coming from the API.

    My recommendation is to understand the core building blocks of mobile apps really well, both how to use them but also the abstractions behind them.

  • 2
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    7 months ago

    I have never properly "studied" for a mobile system design round, but I have passed every single one I have ever taken. Here's how I did it:

    • Doing system design on the job - At Course Hero, I built their entire Android app from scratch and pushed hard for its quality. At Instagram, I was the mobile architect across my team (both Android and iOS). Since you work at Slack, which is a top tier company, you can get similar practical experience. Create very thorough tech docs and analyze performance metrics closely to find optimizations. This is what I would expect from a senior/staff mobile engineer. I made a course about this: Frontend System Design Masterclass - Building Playlists
    • Side projects - A lot of mobile system design principles can be spun up within a mobile app of your own. I did this as I published 30+ apps with 4.5 million+ users combined. No system design problem caught me off-guard as I have pretty much built every common app type imaginable.

    Mobile system design is great as I have found it to be far more practical and anchored compared to some of the crazy problems back-end engineers get with their system design rounds. You can find more resources here: "What are some good resources for learning Mobile System design?"

  • 1
    Profile picture
    Mid-Level Software Engineer at Walmart
    7 months ago

    I did interview for the Android role at a FAANG company recently. Although the interview was for a mid-level role I did try my best to prepare myself for a senior level role. I've added a detailed answer on how to crack a mobile system design interview here: https://www.jointaro.com/question/NyLoSTCyju0rfywZUPvs/what-are-some-good-resources-for-learning-mobile-system-design/

    Moreover, for a Staff level interview I'm sure you'd need to showcase more qualities apart from the technical expertise like leadership, diversity of your work, etc.

Slack is an instant messaging program designed by Slack Technologies and owned by Salesforce. Although Slack was developed for professional and organizational communications, it has also been adopted as a community platform.
Slack3 questions