10 câu hỏi có thể gặp khi phỏng vấn
Chọn theo kỹ năng và cấp của tin (Network & System Admin, Java, Python). Gợi ý trả lời do Drama Công Ty biên soạn để bạn ôn nhanh, không phải đề của công ty.
01Người dùng báo "không vào được mạng". Bạn kiểm tra theo thứ tự nào?Network & System Admin · Junior
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →Đi từ gần ra xa và từ tầng thấp lên cao, mỗi bước loại trừ một khả năng.
ip a # hoặc ipconfig /all: có IP, gateway, DNS? ping <gateway> # mạng nội bộ ổn? ping 1.1.1.1 # ra Internet được bằng IP? nslookup example.com # DNS phân giải được?- Ping IP được mà tên miền không được: lỗi DNS.
- Chỉ một người bị hay cả phòng: cả phòng thì nghi switch, DHCP, đường truyền.
- Chỉ một trang web: proxy, firewall, hoặc chính trang đó.
- Dùng
tracert/tracerouteđể xem gói dừng ở chặng nào.
Người phỏng vấn muốn nghe: hỏi thêm thông tin trước (ai, từ khi nào, có gì thay đổi).
02VLAN là gì và vì sao cần chia VLAN? Trunk port khác access port thế nào?Network & System Admin
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →VLAN chia một switch vật lý thành nhiều mạng L2 logic tách biệt, giúp thu nhỏ vùng broadcast và cô lập các nhóm (kế toán, khách, camera, server).
- Access port: thuộc một VLAN, nối với máy trạm; frame không gắn tag.
- Trunk port: mang nhiều VLAN giữa switch với switch hoặc router, frame gắn tag 802.1Q.
- Các VLAN muốn nói chuyện với nhau phải qua thiết bị L3 (router, switch L3, firewall), nơi có thể đặt ACL.
Hay sai: để Wi-Fi khách chung VLAN với mạng nội bộ, hoặc cho phép mọi VLAN đi qua trunk khi không cần.
03Server Linux chạy chậm. Bạn dùng những lệnh nào để tìm nguyên nhân?Network & System Admin
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →Xác định tài nguyên nào đang nghẽn: CPU, RAM, ổ đĩa hay mạng.
uptime; top # load average, process ngốn CPU/RAM free -h # còn RAM không, có dùng swap nhiều? df -h; df -i # đầy dung lượng hoặc hết inode iostat -x 1 # ổ đĩa có quá tải (%util, await)? ss -tunap # kết nối mạng journalctl -p err -b # lỗi từ lần boot này- Load cao nhưng CPU rảnh: thường là chờ I/O (
wacao trongtop). dmesgcó OOM killer: thiếu RAM.
Hay sai: xoá file log đang được process mở; dung lượng không giải phóng cho tới khi restart process (xem
lsof +L1).- Load cao nhưng CPU rảnh: thường là chờ I/O (
04Dependency Injection trong Spring là gì? Vì sao nên dùng constructor injection thay cho
@Autowiredtrên field?JavaGợi ý trả lời
Ôn thêm câu hỏi Java →IoC container của Spring tạo và quản lý các bean, rồi "tiêm" phụ thuộc vào class cần dùng, thay vì class tự
new. Nhờ vậy code ít phụ thuộc cứng, dễ thay implementation và dễ test.Constructor injection được khuyên dùng vì:
- Field có thể là
final, object luôn ở trạng thái đầy đủ sau khi tạo. - Test unit không cần Spring: chỉ cần
new OrderService(mockRepo). - Constructor quá nhiều tham số là dấu hiệu class đang ôm nhiều việc.
- Class chỉ có một constructor thì không cần ghi
@Autowired.
Nên nói thêm về scope: mặc định bean là
singleton(một instance cho cả context), ngoài ra cóprototype,request,session.Hay sai: để state thay đổi được (ví dụ biến đếm, list) trong bean singleton. Nhiều request chạy song song sẽ dùng chung và gây race condition.
- Field có thể là
05
@Transactionalhoạt động thế nào? Vì sao có lúc gắn annotation rồi mà transaction không chạy?JavaGợi ý trả lời
Ôn thêm câu hỏi Java →Spring tạo proxy bao quanh bean. Khi gọi method có
@Transactionalqua proxy, proxy mở transaction, gọi method thật, rồi commit hoặc rollback.Những lý do hay gặp khiến nó "không ăn":
- Self-invocation: method A trong cùng class gọi
this.b()có@Transactional, lời gọi không đi qua proxy. - Method là
privatehoặcfinal: proxy không chặn được lời gọi. - Mặc định chỉ rollback với unchecked exception và
Error. Checked exception vẫn commit, trừ khi khai báorollbackFor = Exception.class. - Exception bị
catchvà nuốt bên trong method.
Nên biết thêm
propagation(REQUIRED,REQUIRES_NEW) vàreadOnly = truecho các truy vấn chỉ đọc.Người phỏng vấn muốn nghe: bạn giải thích được bằng cơ chế proxy, không chỉ liệt kê lỗi.
- Self-invocation: method A trong cùng class gọi
06GIL là gì? Vậy khi nào dùng threading, multiprocessing hay asyncio?Python
Gợi ý trả lời
Ôn thêm câu hỏi Python →GIL (Global Interpreter Lock) trong CPython chỉ cho một thread chạy bytecode Python tại một thời điểm. Vì vậy threading không tăng tốc tác vụ nặng CPU, nhưng vẫn hữu ích cho I/O vì GIL được nhả ra khi chờ mạng, đĩa.
- I/O, số lượng vừa phải, thư viện blocking:
threadinghoặcThreadPoolExecutor. - I/O rất nhiều kết nối đồng thời:
asynciovới thư viện async (httpx,asyncpg). - Nặng CPU:
multiprocessinghoặcProcessPoolExecutor, hoặc dùng thư viện viết bằng C như NumPy (nhả GIL khi tính toán).
Từ Python 3.13 có bản build free-threaded (không GIL) tuỳ chọn, nhưng chưa phải mặc định và còn phụ thuộc thư viện hỗ trợ.
Người phỏng vấn muốn nghe: bạn phân biệt được bài toán I/O-bound và CPU-bound trước khi chọn công cụ.
- I/O, số lượng vừa phải, thư viện blocking:
07DNS hoạt động thế nào? Kể các loại record hay dùng và lỗi DNS thường gặp.Network & System Admin
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →Máy hỏi resolver; resolver hỏi lần lượt root, máy chủ TLD (.com, .vn), rồi máy chủ authoritative của tên miền, sau đó cache kết quả theo TTL.
Record hay dùng:
A/AAAA: tên sang IPv4/IPv6.CNAME: bí danh trỏ sang tên khác.MX: máy chủ nhận mail;TXT: SPF, DKIM, xác minh tên miền.PTR: tra ngược IP sang tên.
Lỗi hay gặp:
- Đổi record nhưng cache cũ còn hiệu lực do TTL dài; nên hạ TTL trước khi chuyển đổi.
- Đặt CNAME ở tên miền gốc (apex), không hợp lệ theo chuẩn.
Kiểm tra bằng
dighoặcnslookup.08Active Directory là gì? Bạn quản lý người dùng và chính sách trong domain thế nào?Network & System Admin
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →Active Directory là dịch vụ thư mục của Windows Server, quản lý tập trung người dùng, máy tính, nhóm và xác thực (Kerberos) trong một domain.
- Tổ chức đối tượng theo OU (phòng ban, chi nhánh) để áp chính sách riêng.
- Cấp quyền qua group, không cấp trực tiếp cho từng user.
- Group Policy (GPO): chính sách mật khẩu, khoá màn hình, map ổ mạng, cài phần mềm.
- Có ít nhất 2 domain controller để dự phòng; AD phụ thuộc DNS nên DNS phải đúng.
- Tài khoản admin domain tách riêng khỏi tài khoản dùng hằng ngày.
Hay sai: đồng hồ lệch giữa máy và domain controller khiến Kerberos xác thực lỗi; cần đồng bộ NTP.
09Bạn thiết kế mạng cho một văn phòng khoảng 200 người, có server nội bộ và Wi-Fi khách thế nào?Network & System Admin · Senior
Gợi ý trả lời
Ôn thêm câu hỏi Network & System Admin →Trình bày theo lớp và nhấn vào phân vùng, dự phòng, quản lý.
- Phân VLAN: nhân viên, server, quản trị thiết bị, camera/IoT, Wi-Fi khách.
- Firewall ở biên và giữa các VLAN; Wi-Fi khách chỉ ra Internet, không vào mạng nội bộ.
- Core/access: switch L3 ở lõi, switch access có PoE cho AP và điện thoại IP; cân nhắc dự phòng đường lên.
- Internet: hai đường truyền từ hai nhà mạng, failover hoặc cân bằng tải.
- Dịch vụ: DHCP, DNS nội bộ, NTP, VPN cho làm việc từ xa.
- Vận hành: giám sát (SNMP, syslog), backup cấu hình thiết bị, sơ đồ mạng và tài liệu IP.
Người phỏng vấn muốn nghe: hỏi lại nhu cầu và ngân sách trước khi chốt thiết bị.
10Điểm mạnh lớn nhất của bạn là gì?Câu hỏi hành vi & văn hoá
Gợi ý trả lời
Ôn thêm câu hỏi Câu hỏi hành vi & văn hoá →Chọn một hai điểm mạnh liên quan tới vị trí, và chứng minh bằng ví dụ thật, không liệt kê tính từ.
Cấu trúc: điểm mạnh, ví dụ ngắn, kết quả, liên hệ với công việc mới.
Câu mẫu: "Điểm mạnh của em là chủ động tìm nguyên nhân gốc. Ở dự án trước, hệ thống thỉnh thoảng bị timeout mà không ai tái hiện được. Em tự đọc log, thêm theo dõi ở các điểm nghi ngờ và tìm ra một truy vấn bị khoá bảng vào giờ cao điểm. Sau khi sửa, lỗi đó không còn xuất hiện. Em nghĩ điều này hữu ích với vị trí bên mình vì hệ thống có lượng truy cập lớn."
Hay sai: "Em chăm chỉ, ham học hỏi, chịu được áp lực" mà không có ví dụ. Ai cũng nói vậy nên không đọng lại gì.
Bạn đã phỏng vấn ở Avenue?
Kể lại các vòng và câu hỏi đã gặp (ẩn danh) để người sau ôn đúng trọng tâm.
Chia sẻ kinh nghiệm phỏng vấn