APIs
14 topics in apis.
What is an API
API design is a core skill for backend engineers and a key topic in system design interviews.
API Gateway
In a microservices architecture, clients should not need to know about individual service addresses.
REST vs GraphQL
Choosing between REST and GraphQL is a common API design decision and interview question.
WebSockets
WebSockets power real-time features: chat applications, live notifications, stock tickers, collaborative editing, and online gaming.
Webhooks
Webhooks enable event-driven integrations without continuous polling. They are used by virtually every SaaS platform (Stripe, GitHub, Slack, Twilio) to.
Idempotency
Network failures are inevitable. Clients will retry requests. Without idempotency, retries can cause catastrophic bugs — a payment system that charges.
Rate Limiting
Without rate limiting, a single client can overwhelm your service (intentionally via DDoS or unintentionally via a bug).
API Design Best Practices
APIs are contracts — once published, they are hard to change without breaking clients. Good design from the start saves years of technical debt.
gRPC Explained: Protobuf, HTTP/2, Streaming and Microservices
Understand gRPC for system design: Protocol Buffers, HTTP/2, unary calls, streaming, deadlines, load balancing, and REST vs gRPC tradeoffs.
Authentication: JWT, OAuth 2.0, Sessions and Login Design
Design authentication for distributed systems: passwords, sessions, JWT, OAuth 2.0, refresh tokens, SSO, MFA, security risks, and scaling tradeoffs.
Authorization: RBAC, ABAC, Permissions and Policy Engines
Design authorization for distributed systems: RBAC, ABAC, scopes, policy engines, permission checks, multi-tenancy, and security tradeoffs.
WebRTC: Real-Time Video, Audio, NAT Traversal and SFU Design
Understand WebRTC system design: peer connections, ICE, STUN, TURN, SFU architecture, media routing, latency, and scaling real-time video.
RBAC
Role-Based Access Control assigns permissions to roles, not individual users. Users inherit permissions through role membership, simplifying access.
Single Sign-On: SAML, OpenID Connect and Enterprise Login
Design Single Sign-On for enterprise systems: SAML, OpenID Connect, identity providers, sessions, tenant mapping, security, and scaling tradeoffs.