Framework Thinking - SDE Interview

Here is framework thinking for SDE Interview.

1. Computer Science

  1. What is it ?

  2. Apply in practice.

2. Coding Interview

  1. Understand the problem

  2. Clarify constraints, asks 4 - 5 questions including edge cases.

  3. Explore examples.

  4. Brainstorm 2 - 3 solutions, naive solution first and optimize later. Explain the idea of each solution.

  5. Dry run with examples to explain ideas of each solutions, code it easy to understand with Python and in a function (e.g. function Solution).

  6. Implement solutions.

  7. Dry run testcases.

3. System Design

  1. Understand the problem

  2. Identify functional requirements / non-functional requirements (Availability, Scalability, Performance).

  3. Estimate capacity: QPS, Storage => Ask for Daily active user, Action per user, How long you store data

  4. Data Models & Relationship (use-a, has-a, is-a) & API Design.

  5. High-level for Functional Requirements.

  6. Data Flow

  7. Bottlenecks

    Constraint Typical Bottleneck How to Spot
    QPS / Throughput DB writes, queues Estimate expected QPS vs max capacity
    Latency Synchronous I/O, API chaining Count service hops, network calls
    Availability Single point failures Check if component can fail alone
    Storage / Growth DB size, partitioning Estimate data scale over time
  8. Scaling Patterns: Scaling reads, scaling writes, real-time updates,…

  9. Action Plan: Mobile Team, FE Team, Backend Team,…

4. Low Level Design

4.1. Design

  1. Clarify the requirements.

  2. Choose the entities.

  3. Define fields and methods for entities.

  4. Define relationship functions: use-a, has-a, is-a.

  5. Define central class service.

4.2. Implementation

  1. Follow SOLID, Coding Patterns.

  2. Follow Design Patterns.

  3. Handle concurrency.

  4. Handle edge cases, exceptions.

4.3. How to write a class for function ?

  1. Clarity: understand the thinking process.

  2. Intent: have intent when and why to use it.

  3. Single responsibility: Each class takes 1 responsibility to do.

4.4. How to decide the pattern ?

  1. Creational Patterns:
  • How the object are created using singleton or clone ?
  1. Structural Pattern:
  • How this system is adapt to new larger system ?
  1. Behavior Pattern:
  • How each components interact with others ?

5. Behaviour Interview

  1. Read the full questions

  2. What is core intention: Problem-solving (Internal), Teamwork & Collaboration & Conflict Resolution (External)

  3. Situation: your team, what is project, why we have this project ?

  4. Task: Scope of your task, not your team.

  5. Action: Step 1 → Step 2 → Step 3 + Why, show your thinking process.

  6. Result: Result metrics, Collaboration, Lesson Learn => Trick: Show the keyword + Prove from action.

  7. Follow-up questions ?

a. Drill-Down Questions (Testing Depth)

  • How to answer: Be specific

b. Self-Reflection Questions (Testing Growth Mindset)

  • How to answer:  Be humble, honest, and constructive.

c. Scope & Contribution Questions (Testing Ownership)

  • How to answer: Be honest and precise.

d. Challenging Questions (Testing Resilience & Professionalism)

  • How to answer: Stay calm and professional. Don’t get defensive, focus on share goals, not personal drama.
December 13, 2025