FB mobile engineers

Akamai Technologies MsLK74
Aug 7 11 Comments

I am preparing for an iOS dev role on site architecture interview at FB.

when you are asked a question like “design an app for ...”, what is the focus of discussions?

Is the discussion around UIView hierarchies, MVC MVVM type of block diagrams.

Or Is it about core features to improve performance like caching, network and battery consumption? Capacity estimations needed?

Is there any helpful material that i can refer to?

comments

Want to comment? LOG IN or SIGN UP
TOP 11 Comments
  • Akamai Technologies MsLK74
    OP
    I received an offer. Thanks everyone for the help.
    Sep 30 2
    • Uber
      TC || 👉

      Uber

      PRE
      Google
      TC || 👉more
      Awesome 👏. What level?
      Interview details please.
      Sep 30
    • Akamai Technologies MsLK74
      OP
      E5. On site was 5 rounds , with every round focused on DS and algo, with slight reference to iOS domain. Design was an open discussion about trade offs and performance improvement.
      Sep 30
  • Facebook lDtF81
    You are referring to a FB iOS Architecture interview(Pirate Interviewer). The interviewers objective is to calibrate your technical breadth, depth and decision making ability. Your goal is to demonstrate that you could design and scale an entire app (views, navigation, interactions, networking, data storage, etc) from scratch.

    The diagram and system choices are less important that sharing your thought process.

    Example:
    FB: How you would structure the business logic code?
    I: Well, there are a couple different options.
    FB: Tell me more
    I: UIKit is mainly uses MVC but the controller file becomes a huge mess for complex views. The MVVM architecture splits the controller’s UI state into the view-model and the data....
    FB: Which one do you prefer?
    I: I prefer VIPER because it...
    FB: Okay, let’s switch gears and talk about how you end up with these data models
    Aug 7 1
    • Facebook / Eng TCYOE
      Oh this is good. Also, be sure to know data handling/networking/api calls, blocks/delegates/notifications, UI on main, and just design in general (like how to design drawing a complex UI from response to render).
      Aug 7
  • Facebook vjuiu
    Yes.
    Aug 7 1
    • Akamai Technologies MsLK74
      OP
      Would be great if you could elaborate
      Aug 7
  • New
    MeatSmoker

    New

    PRE
    YouNow
    MeatSmokermore
    You can’t really win this one by knowing the answer in advance.. I’d suggest drawing some diagrams.. creating some protocols.. go slow and always explain your reasoning first.

    I stuck to MVC and discussed dependency injection, among some other concepts. Solid CS fundamentals override any flavors of design patterns (not all interviewers may be versed in MVVM or RXSwift, etc)
    Aug 7 1
  • Akamai Technologies MsLK74
    OP
    Thanks for replying with so much details. Made very accurate suggestions, I will definitely focus on it. Thanks
    Aug 8 0
  • New
    MeatSmoker

    New

    PRE
    YouNow
    MeatSmokermore
    I just got hired as an iOS Dev at FB. I only have my experience, but I know that the answer to your question is that there is no single “correct” route for discussion.

    Have a frank and empathetic conversation with your interviewer. Try and learn how you best communicate, and use those methods (while gauging the interviewers cues).

    Based on your YOE, they’ll compare your knowledge to other interviews they conduct.
    Aug 7 0

Salary
Comparison

    Real time salary information from verified employees