Meta Product Design/ Architecture

I think I figured it out the difference between Product Architecture and System Design interviews, but please correct me if I’m wrong because I HAVE NOT HAD THIS INTERVIEW YET. It seems to me the difference between the two happens during the “deep dive” portion. —— interview structure —— 1. FR/ NFR: Define functional/ nonfunctional requirements 2. Core Entities: List the entities outlined in FR. 3. API: Define API contracts that solve FR and return core entities. 4. HLD: One by one, create E2E flow from client to DB for each API endpoint. Which would have resulted in: - A complete, yet not scalable system - High level convos about “why this and not that” - Convos about auth, scopes, firewalls - Schema design - A high level understanding of the system 5. Deep dive Instead of diving deep with 2-3 opportunities to SCALE/ meet NFR (like sys design), you find 2-3 opportunities to show mid tier - client side chops by solving user focused problems based on NFR. —— example deep dives —— 1. How can you use UI/ UX to solve for a NFR, and what priority does this have? (Virtual waiting queue experience for T Swift tickets/ distributed lock experience) 2. How do you solve a NFR for all users, everywhere (3g - 5g)? 3. What are some monetization strategies (a stretch maybe)? 4. How can you use HTTP caching/ browser caching to free up bandwidth, improve latency, ensure availability? 5. How do you display paginated data with user experience in mind? Would you use key set or offset pagination? 6. How can you make adding future features easy to add to existing system? Are your APIs set up to add new endpoints for new features? 7. How can you improve the time to interactive with the system’s requirements? 8. How are we monitoring users, and how are we making decisions based on their behaviors (new features, bugs, UX improvements) etc… ——— miscellaneous ——— TC: 0 YOE: 7 #meta #systemdesign #interview

Poll
3 Participants
Select only one answer
No comments.