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 (DevOps & CI/CD, Network & System Admin). 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.
01Trong Kubernetes, Pod, Deployment và Service là gì và liên quan với nhau thế nào?DevOps & CI/CD · Junior
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →Pod là đơn vị chạy nhỏ nhất (một hoặc vài container dùng chung network); Deployment quản lý số bản sao Pod và việc cập nhật; Service cho một địa chỉ ổn định để gọi tới nhóm Pod.
- Pod có thể chết và được tạo lại với IP mới, nên không gọi trực tiếp IP Pod.
- Deployment tạo ReplicaSet, hỗ trợ rolling update và rollback.
- Service chọn Pod theo label (
selector), kiểuClusterIP(nội bộ),NodePort,LoadBalancer. - Từ ngoài vào HTTP thường dùng Ingress hoặc Gateway API phía trước Service.
Hay sai: label của Pod template không khớp
selectorcủa Service, khiến Service không có endpoint nào.02Pod bị CrashLoopBackOff, bạn điều tra thế nào?DevOps & CI/CD
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →CrashLoopBackOff nghĩa là container khởi động rồi thoát liên tục; cần tìm lý do nó thoát.
kubectl describe pod <pod> # events, exit code, OOMKilled? kubectl logs <pod> --previous # log của lần chạy trước khi chết kubectl get events --sort-by=.lastTimestamp- Exit code 137 /
OOMKilled: thiếu memory limit hoặc rò rỉ bộ nhớ. - Lỗi cấu hình: thiếu biến môi trường, Secret/ConfigMap sai, không kết nối được DB.
- Liveness probe quá gắt khiến app bị kill khi đang khởi động; cân nhắc
startupProbe. - Sai lệnh
command/args, sai kiến trúc image (arm64 và amd64).
Người phỏng vấn muốn nghe: quy trình có thứ tự, dựa vào events và log trước khi đoán.
- Exit code 137 /
03Liveness, readiness và startup probe khác nhau thế nào? Cấu hình sai thì hậu quả gì?DevOps & CI/CD
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →Readiness quyết định Pod có nhận traffic không; liveness quyết định có restart container không; startup probe tạm hoãn hai probe kia cho tới khi app khởi động xong.
- Readiness fail: Pod bị gỡ khỏi endpoint của Service, không bị restart.
- Liveness fail: kubelet restart container.
- Startup probe hợp với app khởi động chậm (JVM, nạp model).
Lỗi hay gặp:
- Liveness kiểm tra cả DB bên ngoài: DB chậm là toàn bộ Pod bị restart dây chuyền.
- Không có readiness: rolling update đẩy traffic vào Pod chưa sẵn sàng, gây lỗi 5xx.
Người phỏng vấn muốn nghe: liveness chỉ nên kiểm tra chính process còn sống, phần phụ thuộc để cho readiness.
04VLAN 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.
05Server 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 (
06Terraform state là gì? Làm việc nhóm với Terraform bạn quản lý state thế nào?DevOps & CI/CD
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →State là file Terraform ghi lại ánh xạ giữa code và tài nguyên thật; Terraform dựa vào nó để tính
plan. Mất hoặc lệch state là nguy cơ tạo trùng hoặc xoá nhầm tài nguyên.- Lưu state ở remote backend (S3, GCS, Azure Blob, Terraform Cloud), bật versioning và mã hoá.
- Bật locking để hai người không
applycùng lúc. - Tách state theo môi trường/thành phần để giảm phạm vi ảnh hưởng.
- Không commit state lên Git: trong đó có thể chứa secret.
- Chạy
plantrong CI cho mỗi PR,applyqua pipeline có duyệt.
Hay sai: sửa tay trên console rồi quên, tạo drift; nên định kỳ chạy
planđể phát hiện.07Bạn quản lý secret (mật khẩu DB, API key) trong pipeline và Kubernetes thế nào?DevOps & CI/CD
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →Nguyên tắc: secret không nằm trong Git, không in ra log, được cấp theo quyền tối thiểu và xoay vòng được.
- Dùng secret manager (Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager) làm nguồn gốc.
- Đồng bộ vào cluster bằng External Secrets Operator hoặc CSI driver; nếu phải để trong Git thì mã hoá (Sealed Secrets, SOPS).
- Kubernetes Secret mặc định chỉ base64: bật mã hoá etcd và giới hạn RBAC đọc Secret.
- CI dùng biến được che (masked), ưu tiên OIDC để lấy credential ngắn hạn thay vì key dài hạn.
- Bật quét secret khi push code.
Người phỏng vấn muốn nghe: biết base64 không phải mã hoá, và có kế hoạch xoay key khi bị lộ.
08So sánh rolling update, blue-green và canary. Bạn chọn chiến lược nào cho hệ thống thanh toán?DevOps & CI/CD · Senior
Gợi ý trả lời
Ôn thêm câu hỏi DevOps & CI/CD →Cả ba đều giảm rủi ro khi deploy nhưng khác ở chi phí và tốc độ phát hiện lỗi.
- Rolling: thay dần từng Pod, rẻ, mặc định của Deployment; hai phiên bản chạy song song một lúc.
- Blue-green: dựng nguyên bộ mới, chuyển traffic một lần, rollback tức thì; tốn gấp đôi tài nguyên.
- Canary: đưa một phần nhỏ traffic sang bản mới, theo dõi metric rồi tăng dần; cần công cụ (service mesh, Argo Rollouts) và metric tốt.
Với thanh toán, canary kèm tự động rollback theo tỷ lệ lỗi và độ trễ là lựa chọn hợp lý.
Hay sai: quên migration DB. Schema phải tương thích cả bản cũ lẫn mới (expand rồi mới contract).
09DNS 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.10Bạn thấy mình ở đâu sau 2–3 năm nữa?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á →Người phỏng vấn muốn biết mục tiêu của bạn có khớp với hướng phát triển ở công ty và bạn có định gắn bó không.
- Nêu hướng phát triển cụ thể, thực tế: đi sâu chuyên môn (senior, chuyên gia một mảng) hay quản lý (lead, PM).
- Kèm kế hoạch: kỹ năng cần học, trách nhiệm muốn nhận thêm.
- Gắn với cơ hội ở vị trí đang ứng tuyển.
Câu mẫu: "Trong 2–3 năm tới em muốn trở thành senior có thể tự thiết kế và chịu trách nhiệm một module lớn, đồng thời hướng dẫn được các bạn mới. Em đang học thêm về thiết kế hệ thống và thấy team bên mình có nhiều bài toán ở quy mô lớn, rất hợp để em phát triển theo hướng đó."
Hay sai: "Em muốn mở công ty riêng" hoặc "em chưa nghĩ tới". Cũng đừng nói muốn ngồi vào chỗ của người đang phỏng vấn.
Bạn đã phỏng vấn ở Tổng công ty Tân Cảng Sài Gòn (Saigon NewPort Corporation)?
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