34 lines
2.6 KiB
Plaintext
34 lines
2.6 KiB
Plaintext
---
|
|
title: Cheatsheet for Front End System Design Interviews
|
|
description: Summary of the most important things you should take note of during front end system design interviews.
|
|
seo_title: Cheatsheet for Front End System Design Interviews | GreatFrontEnd
|
|
social_title: Cheatsheet for Front End System Design Interviews | GreatFrontEnd
|
|
seo_description: Summary of the most important things you should take note of during front end system design interviews.
|
|
---
|
|
|
|
## RADIO framework
|
|
|
|
1. **Requirements exploration**: Understand the problem thoroughly and determine the scope by asking a number of clarifying questions.
|
|
1. **Architecture / High-level design**: Identify the key components of the product and how they are related to each other.
|
|
1. **Data model**: Describe the various data entities, the fields they contain and which component(s) they belong to.
|
|
1. **Interface definition (API)**: Define the interface (API) between components in the product, functionality of each APIs, their parameters and responses.
|
|
1. **Optimizations and deep dive**: Discuss about possible optimization opportunities and specific areas of interest when building the product.
|
|
|
|
## Evaluation axes
|
|
|
|
1. **Problem exploration**: Demonstrated understanding of the problem, asked clarifying questions to reduce ambiguities and gathered sufficient requirements.
|
|
1. **Architecture**: Broke down the problem into smaller independent parts, defined their responsibilities and how these components can work together.
|
|
1. **Technical proficiency**: Demonstrated technical knowledge and proficiency of front end domain fundamentals (e.g. performance, networking, accessibility, i18n, security, etc), relevant technologies and APIs.
|
|
1. **Exploration and tradeoffs**: Suggested various possible approaches on how to achieve certain functionality, explained the pros and cons and made recommendations.
|
|
1. **Product and UX sense**: Showed consideration for user experience and decisions to make the product a great one.
|
|
1. **Communication and collaboration**: Conveyed thoughts and ideas clearly and concisely, receptive to feedback and collaborated with the interviewer.
|
|
|
|
## Common mistakes
|
|
|
|
- Jumping into answering the question immediately without first asking questions and gathering requirements.
|
|
- Approaching the question in an unstructured manner, going all over the place and missing out on important areas.
|
|
- Insisting on only one solution or the best solution without realizing that each solution has tradeoffs.
|
|
- Remaining silent the entire time and only thinking in their head.
|
|
- Going down a rabbit hole and spending too much time on unimportant areas.
|
|
- Using buzzwords without being able to explain them.
|