Thư Viện Câu Hỏi Phỏng Vấn

Tổng hợp các câu hỏi tuyển dụng thực tế theo nhiều cấp độ từ Entry đến Expert để bạn tự tin chinh phục nhà tuyển dụng.

Tất cả công nghệ .Net (39) ADO.NET (33) Agile scrum (43) Android (44) Angular (121) API Design (53) Arrays (19) ASP.NET (52) ASP.NET MVC (35) ASP.NET Web API (32) Availability & Reliability (2) Azure (53) Backtracking (7) Big-O Notation (16) Binary Tree (19) Bit Manipulation (9) Blockchain (42) C# (105) Caching (2) CAP Theorem (2) CDN (2) Concurrency (2) Cosmos DB (50) Cryptography (4) CSS (63) Data Structures (69) Databases (50) DDD (2) Dependency Injection (4) Design pattern (23) Devops (32) Divide & Conquer (2) Docker (38) Dynamic Programming (10) Entity Framework (57) Fibonacci Series (4) Flutter (136) Git (63) Go lang (60) Graph Theory (19) GraphQL (71) Greedy Algorithms (7) Hash Tables (25) Heaps and Maps (10) HTML (73) Ionic (29) IOS (75) Java (141) Javascript (137) jQuery (95) Kotlin (60) Kubernetes (27) Laravel (90) Layering & Middleware (2) Linked Lists (17) LINQ (30) Load Balancing (2) Microservices (30) Mongodb (27) MySQL (58) Net core (66) Node.js (119) NoSQL (2) Objective-C (33) OOP (75) Package Managerment (60) PHP (78) PostgreSQL (50) PWA (22) Python (82) Queues (11) React Native (38) React.js (116) Reactive Programming (11) Recursion (5) Redis (25) Ruby (79) Ruby on Rails (121) Rust (88) Searching (18) SOA (2) Software Architecture (3) Software Testing (11) Sorting (13) Spring (78) SQL (43) SQL Server (66) Stacks (10) Strings (17) Swift (89) Systems Design (50) T-SQL (43) Trees (31) Trie (8) Typescript (100) Unit testing (22) UX Design (74) Vue.js (84) Web security (45) WebSockets (25) Xamarin (81)
01

Garbage Collection (GC) trong Java: So sánh điểm khác biệt giữa G1 Garbage Collector và ZGC (Z Garbage Collector)?

Expert
  • G1 (Garbage-First) GC: Chia Heap thành nhiều phân vùng nhỏ (regions) có kích thước bằng nhau. G1 sẽ quét và ưu tiên dọn dẹp phân vùng chứa nhiều rác nhất trước để tối đa hóa hiệu năng thu hồi bộ nhớ. Thời gian dừng ứng dụng (Stop-the-World) của G1 thường là khoảng vài chục đến vài trăm mili giây.
  • ZGC (Z Garbage Collector): Được thiết kế cho các hệ thống cần độ trễ cực thấp và bộ nhớ heap khổng lồ (từ vài GB đến hàng TB). ZGC thực hiện hầu hết các công việc dọn dẹp song song (concurrently) với các luồng ứng dụng. Nhờ vậy, thời gian Stop-the-World của ZGC luôn dưới mức 1 mili giây, không bị tăng lên khi kích thước Heap tăng.
  • 02

    Làm thế nào để thiết kế một hệ thống có tính sẵn sàng cao (High Availability) đạt tiêu chuẩn "Five Nines" (99.999% uptime)? Các chiến lược chính là gì?

    Expert

    Tiêu chuẩn "Five Nines" tương đương với thời gian ngừng hoạt động (downtime) tối đa chỉ khoảng 5.26 phút trong một năm. Để thiết kế hệ thống như vậy, cần áp dụng các chiến lược sau:

    1. Loại bỏ Single Point of Failure (SPOF): Mọi thành phần trong hệ thống (Load Balancers, App Servers, Databases, Network) đều phải có cơ chế dự phòng (Redundancy) hoạt động song song hoặc ở trạng thái Active-Standby.
    2. Tự động phát hiện và chuyển vùng lỗi (Failover): Sử dụng các công cụ giám sát sức khỏe (Health Checks) để tự động cô lập node lỗi và định hướng lưu lượng sang node khỏe mạnh (ví dụ: K8s Self-Healing, Keepalived).
    3. Hệ thống phân tán đa vùng (Multi-Region Deployment): Triển khai ứng dụng trên nhiều vùng địa lý độc lập để phòng ngừa thiên tai hoặc sự cố diện rộng của nhà cung cấp cloud (sử dụng Route 53 Geolocation/Failover routing).
    4. Cơ chế cô lập lỗi (Graceful Degradation & Circuit Breaker): Cho phép tắt bớt các tính năng không thiết yếu khi hệ thống quá tải để bảo vệ các dịch vụ cốt lõi không bị sập theo dây chuyền (Cascading Failures).
    03

    Best practices cần tuân thủ khi tích hợp và cấu hình Query Syntax vs Method Syntax trong dự án LINQ là gì?

    Expert

    Trong phát triển dự án với LINQ, việc tối ưu hóa và quản lý tốt Query Syntax vs Method Syntax là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Query Syntax vs Method Syntax dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    04

    Best practices cần tuân thủ khi tích hợp và cấu hình AppDomains isolation trong dự án .Net là gì?

    Expert

    Trong phát triển dự án với .Net, việc tối ưu hóa và quản lý tốt AppDomains isolation là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của AppDomains isolation dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    05

    Best practices cần tuân thủ khi tích hợp và cấu hình Angular/React/Vue integration trong dự án Ionic là gì?

    Expert

    Trong phát triển dự án với Ionic, việc tối ưu hóa và quản lý tốt Angular/React/Vue integration là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Angular/React/Vue integration dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    06

    Best practices cần tuân thủ khi tích hợp và cấu hình Flexbox layout trong dự án React Native là gì?

    Expert

    Trong phát triển dự án với React Native, việc tối ưu hóa và quản lý tốt Flexbox layout là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Flexbox layout dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    07

    Best practices cần tuân thủ khi tích hợp và cấu hình Mongoose ODM schema trong dự án Mongodb là gì?

    Expert

    Trong phát triển dự án với Mongodb, việc tối ưu hóa và quản lý tốt Mongoose ODM schema là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Mongoose ODM schema dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    08

    Best practices cần tuân thủ khi tích hợp và cấu hình Scalability with Redis Adapter trong dự án WebSockets là gì?

    Expert

    Trong phát triển dự án với WebSockets, việc tối ưu hóa và quản lý tốt Scalability with Redis Adapter là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Scalability with Redis Adapter dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    09

    Best practices cần tuân thủ khi tích hợp và cấu hình Action Filters customization trong dự án ASP.NET MVC là gì?

    Expert

    Trong phát triển dự án với ASP.NET MVC, việc tối ưu hóa và quản lý tốt Action Filters customization là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Action Filters customization dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    10

    Best practices cần tuân thủ khi tích hợp và cấu hình Room Database storage trong dự án Android là gì?

    Expert

    Trong phát triển dự án với Android, việc tối ưu hóa và quản lý tốt Room Database storage là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Room Database storage dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    11

    Best practices cần tuân thủ khi tích hợp và cấu hình Sentinel High Availability trong dự án Redis là gì?

    Expert

    Trong phát triển dự án với Redis, việc tối ưu hóa và quản lý tốt Sentinel High Availability là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Sentinel High Availability dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    12

    Best practices cần tuân thủ khi tích hợp và cấu hình Blocks closures trong dự án Objective-C là gì?

    Expert

    Trong phát triển dự án với Objective-C, việc tối ưu hóa và quản lý tốt Blocks closures là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Blocks closures dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    13

    Best practices cần tuân thủ khi tích hợp và cấu hình Decorator Pattern trong dự án Design pattern là gì?

    Expert

    Trong phát triển dự án với Design pattern, việc tối ưu hóa và quản lý tốt Decorator Pattern là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Decorator Pattern dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    14

    Best practices cần tuân thủ khi tích hợp và cấu hình Sprint Retrospective improvements trong dự án Agile scrum là gì?

    Expert

    Trong phát triển dự án với Agile scrum, việc tối ưu hóa và quản lý tốt Sprint Retrospective improvements là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của Sprint Retrospective improvements dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.
    15

    Best practices cần tuân thủ khi tích hợp và cấu hình DataSet In-memory cache trong dự án ADO.NET là gì?

    Expert

    Trong phát triển dự án với ADO.NET, việc tối ưu hóa và quản lý tốt DataSet In-memory cache là vô cùng quan trọng để đảm bảo tính ổn định và hiệu năng của hệ thống. Dưới đây là các khía cạnh kỹ thuật cốt lõi:

    1. Cơ chế hoạt động: Nắm vững vòng đời và cách thức hoạt động của DataSet In-memory cache dưới runtime để tránh các lỗi logic phổ biến.
    2. Best Practices: Áp dụng các mẫu thiết kế chuẩn, hạn chế tối đa tài nguyên dư thừa và sử dụng các thư viện hỗ trợ tối ưu.
    3. Khắc phục lỗi: Sử dụng công cụ giám sát (APM, Profiling, Logs) để theo dõi hành vi, phát hiện kịp thời các hiện tượng như rò rỉ bộ nhớ hoặc nghẽn luồng.
    4. Tối ưu hóa: Cấu hình các tham số hệ thống phù hợp với quy mô tải thực tế của ứng dụng.

    vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học