🏭 Domains✍️ Khoa📅 19/04/2026☕ 3 phút đọc

Domains: Hệ thống Thực tế theo Ngành

Section này không dạy CS lý thuyết thuần túy. Mục tiêu là trả lời câu hỏi: "Khi build hệ thống thực ở ngành X, người ta làm gì khác với textbook?"

Mỗi domain bao gồm: kiến trúc đặc thù, pattern phổ biến, bài toán khó hay gặp, và các câu hỏi interview thực tế mà senior engineer bị hỏi khi apply vào lĩnh vực đó.


Danh sách Domain

Domain File Nội dung chính
Fintech / Neobank fintech.md Ledger, payment flow, KYC/AML, card processing, Napas/VietQR
Streaming & Real-time streaming-and-realtime.md Kafka, Flink, windowing, CDC, event-driven
Blockchain & Web3 blockchain-and-web3.md Consensus, UTXO vs Account, DeFi, Layer 2, Smart Contracts
E-commerce & Marketplace ecommerce-and-marketplace.md Catalog, inventory, flash sale, pricing, recommendation
Ride-hailing & Location ride-hailing-and-location.md Geospatial indexing, matching, surge pricing, trip state machine
Social Network social-network.md Feed generation, fan-out, ranking algorithm, notifications, graph queries
Video Streaming video-streaming-platform.md Transcoding, HLS/DASH, CDN, live streaming, recommendation, content moderation
Gaming Backend gaming-backend.md Matchmaking, real-time multiplayer, lag compensation, leaderboard at scale, anti-cheat
IoT Platform iot-platform.md Device management, MQTT/CoAP, telemetry at scale, edge computing, OTA updates
AdTech / RTB adtech-and-rtb.md Real-time bidding, 100k QPS, auction mechanism, fraud detection, attribution
Healthcare Systems healthcare-systems.md HIPAA compliance, EHR, HL7/FHIR, PHI encryption, audit logging, interoperability

Tại sao cần học theo Domain?

CS fundamentals (algorithms, networking, databases) là nền tảng chung. Nhưng khi join một công ty fintech, bạn sẽ bị hỏi về idempotency trong payment — không phải về binary search. Khi apply vào Grab, bạn bị hỏi về geohash và driver matching — không phải về merge sort.

Domain knowledge giúp bạn:

  1. Rút ngắn onboarding khi join công ty mới trong ngành đó
  2. Pass system design interview bằng cách đề xuất giải pháp industry-proven
  3. Hiểu business context của kỹ thuật mình đang làm

Mối liên hệ với các section khác

flowchart TB
  F["CS Fundamentals (db/, network/, os/)"] --> S["Software Patterns (distributed-systems/, system-design/)"]
  S --> D["Domain Applications (domains/) — bạn đang ở đây"]
CS Fundamentals (db/, network/, os/)
        │
        ▼
Software Patterns (software/distributed-systems/, software/system-design/)
        │
        ▼
Domain Applications (domains/)   ← bạn đang ở đây

Ví dụ: Kafka internals nằm ở streaming-and-realtime.md, nhưng cần hiểu log-structured storage (db/) và distributed consensus (software/distributed-systems/) trước khi đọc sâu.


Độ sâu và Target Audience

Các file trong section này viết ở mức senior engineer / system design interview. Không giải thích từ đầu những khái niệm cơ bản như HTTP hay B-tree — đọc các section tương ứng trước. Mục tiêu là nắm được đủ để:

  • Thiết kế hệ thống trong ngành đó từ whiteboard
  • Thảo luận trade-off như người đã có kinh nghiệm thực tế
  • Không bị bất ngờ bởi jargon chuyên ngành