Compare heap, stack, Protobuf, gRPC, SQL, CI/CD

Quick Overview

Compare heap, stack, Protobuf, gRPC, SQL, CI/CD evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

Compare heap, stack, Protobuf, gRPC, SQL, CI/CD

Company: Booking.com

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

##### Question What is the difference between heap and stack memory? Compare Protobuf and JSON for data serialization. Compare gRPC and traditional RPC mechanisms. When is event streaming (e.g., Kafka) appropriate? When should you use a table join in SQL? What does SQL stand for? What does CI/CD stand for?

Overview: Compare heap, stack, Protobuf, gRPC, SQL, CI/CD evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

|Home/System Design/Booking.com
Booking.com logo
Booking.com
Jul 29, 2025
mediumSoftware EngineerTechnical ScreenSystem Design
29
0

Compare heap, stack, Protobuf, gRPC, SQL, CI/CD

Technical/Phone Screen: Core Systems and Data Concepts

You are interviewing for a Software Engineering role. Answer the following multi-part question concisely and clearly:

  1. What is the difference between stack and heap memory?
  2. Compare Protobuf and JSON for data serialization.
  3. Compare gRPC and traditional RPC mechanisms.
  4. When is event streaming (e.g., Kafka) appropriate?
  5. When should you use a table join in SQL?
  6. What does SQL stand for?
  7. What does CI/CD stand for?

Clarifying Questions to Ask Guidance

  • Clarify users, core use cases, read/write patterns, scale, latency, availability, and data retention.
  • State explicit assumptions before making sizing or architecture decisions.
  • Prioritize the functional path first, then address reliability, security, observability, and rollout.

What a Strong Answer Covers Guidance

  • A scoped requirements summary with concrete non-goals and success metrics.
  • API, data model, architecture, consistency, capacity, and operations.
  • Reasoned trade-offs among simple and scalable designs, including bottlenecks and failure modes.
  • A validation, monitoring, migration, and launch plan appropriate for the risk level.

Follow-up Questions Guidance

  • What breaks first at 10x traffic or data volume?
  • How would you degrade gracefully during dependency failures?
  • What metrics and alerts would prove the design is healthy after launch?

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...