Câu trả lời được dùng nhiều trong thực tế là mô hình chữ T: sâu ở một mảng đủ để là người được hỏi khi có vấn đề khó, rộng vừa đủ ở các mảng liền kề để hiểu và làm việc được với người khác.
Vì sao cần cả hai:
- Chỉ rộng mà không sâu: làm được nhiều việc mức trung bình, nhưng không ai giao phần khó, và rất khó chứng minh giá trị khi lên senior.
- Chỉ sâu mà không rộng: mạnh khi công nghệ đó còn được dùng, rủi ro khi thị trường hoặc công ty đổi hướng, và khó tham gia bàn thiết kế hệ thống.
Cách chọn theo giai đoạn:
- 1-3 năm đầu: nên đi sâu trước một ngăn xếp chính (một ngôn ngữ, một framework, database quan hệ). Nhảy công nghệ liên tục ở giai đoạn này khiến hồ sơ nhìn rời rạc và kỹ năng nào cũng dở dang.
- Sau đó mở rộng theo hướng liền kề công việc: backend học thêm hạ tầng, hàng đợi, quan sát hệ thống; frontend học thêm hiệu năng, kiểm thử, một chút backend.
- Phần nền tảng luôn nên sâu dù chọn hướng nào: cấu trúc dữ liệu, mạng, database, thiết kế hệ thống — vì nó chuyển được sang mọi ngăn xếp.
Khi trả lời phỏng vấn, gắn lựa chọn với định hướng nghề nghiệp cụ thể, không nói chung chung "em học cả hai".