LỖI LẦM VỠ LÒNG: INTERN VÀ BÀI HỌC VỀ TINH THẦN KHÔNG ĐỔ LỖI
06/02/2026
36
Tôi là một Intern, và tôi đã suýt nữa nhấn chìm cả Mobile Team trong dự án đầu tiên.
Đây không phải là câu chuyện về một lỗi đơn giản, mà là về nỗi sợ hãi của người mới, và cách mà tinh thần “không đổ lỗi” đã cứu vãn một ngày Thứ Sáu định mệnh, đồng thời dạy tôi bài học lớn nhất về làm việc nhóm.
1. THỨ SÁU ĐỊNH MỆNH VÀ NỖI SỢ CỦA “LÍNH MỚI”
Chiều Thứ Sáu, 16:30. Cả văn phòng bắt đầu mùi cuối tuần. Màn hình Bảng điều khiển màu xanh rờn: mọi thứ đã sẵn sàng để Team deploy bản cập nhật mới và ai nấy đều chuẩn bị tan ca.
Trong khi mọi người đang thư giãn, mồ hôi lạnh lại chảy ròng trên lưng tôi.
Nhiệm vụ của tôi là thêm một trường hiển thị thông báo khuyến mãi nhỏ trên màn hình sản phẩm, nhưng nó lại yêu cầu tương tác với một phần của cơ chế quản lý dữ liệu Giỏ Hàng. Mặc dù code của tôi đã được merge vào nhánh chính và pass qua các bài test tự động nhờ tính chất lỗi khó tái hiện, nhưng lỗi này đã xuất hiện từ ba ngày trước. Đó là một lỗi kinh khủng, chỉ thi thoảng xuất hiện, khiến số lượng sản phẩm trong Giỏ Hàng bị “nhảy múa” một cách ngẫu nhiên.
Tại sao tôi không nói? Vì tôi là Intern. Tôi tự nhủ: “Mọi người đều xong hết rồi, code mình đã merge, không thể là người duy nhất kéo cả Team ở lại.” Tôi rơi vào cái bẫy tâm lý quen thuộc: cố gắng tự vá lỗi trên code đã được merge, nuôi hy vọng hão huyền rằng “phép màu” sẽ xảy ra trong 30 phút cuối cùng trước khi build chính thức được tạo.
Đó là sai lầm chết người.

2. KHỦNG HOẢNG: KHI MỘT INTERN GÂY ĐÌNH TRỆ LỊCH TRÌNH
17:00, anh Tech Lead đi ngang qua chỗ tôi. Mọi người đều đã dọn dẹp bàn làm việc, nhưng tôi vẫn dán mắt vào màn hình, gõ phím loạn xạ.
Anh Lead dừng lại, cau mày: “Em làm gì vậy? Mọi thứ đã merge hết và pass test rồi, em có thể nghỉ ngơi mà.”
Tôi gần như đông cứng. Bị bắt quả tang. Tôi lắp bắp nói ra sự thật: “Em… em xin lỗi. Code của em đã merge nhưng đang có lỗi rất nghiêm trọng. Nó làm hỏng dữ liệu Giỏ Hàng. Em đang cố sửa nó trước khi build chính thức.”
Mọi người trong Team dừng lại, nhìn tôi. Tôi cảm thấy mình bé nhỏ và vô dụng. Vài phút sau, khi Lead Team chạy kiểm thử tải (Load Test) trên môi trường staging để xác nhận lần cuối, lỗi tranh chấp dữ liệu (Race Condition) nguy hiểm mà tôi đã cố gắng che giấu bị phơi bày. Nó làm thay đổi dữ liệu ngầm, đe dọa sự toàn vẹn của Giỏ Hàng.
Toàn bộ lịch trình Triển khai bị treo.
Phản ứng Bất ngờ: “Cảm ơn em vì đã nói ra”
Thay vì nhận cơn thịnh nộ như tôi đã tưởng tượng, tôi lại nhận được câu nói: “Cảm ơn em đã nói ra. Chúng ta có 4 tiếng, và Team sẽ giải quyết nó cùng nhau.”
Giây phút đó, tôi cảm thấy gánh nặng trên vai mình được gỡ bỏ.
Ngay lập tức, anh Tech Lead tổ chức một “Phòng chiến đấu” khẩn cấp trên Google Meet.
- Không đổ lỗi, chỉ giải quyết: Anh ấy tuyên bố dứt khoát: “Việc của chúng ta là sửa lỗi, không phải tìm xem ai là người gây ra nó.”
- Phân công chớp nhoáng: Hai Senior Developer giỏi nhất được giao nhiệm vụ: một người tìm nguyên nhân gốc rễ (Root Cause) và viết cơ chế Khóa (Locking) để bảo vệ dữ liệu Giỏ Hàng; người còn lại chuẩn bị môi trường và bản vá nóng (Hotfix).
- Vai trò của tôi: Tôi không bị loại khỏi vòng chiến. Tôi được giao nhiệm vụ quan trọng là tổng hợp lại tất cả các kịch bản lỗi mà tôi đã gặp, và làm tester bất đắc dĩ. Nhờ có tôi, Team có thể tái hiện và xác nhận lỗi được sửa nhanh chóng nhất.

3. BÀI HỌC VỀ TINH THẦN ĐỒNG ĐỘI
Chúng tôi làm việc đến đêm khuya. Tiếng gõ phím, tiếng trao đổi kỹ thuật ngắn gọn, chuyên nghiệp và cực kỳ tập trung. Đến nửa đêm, bản sửa lỗi đã được gửi đi thành công.
Nhưng điều đọng lại không phải là lỗi được sửa, mà là cách chúng tôi vượt qua nó.
Bài học lớn nhất tôi rút ra từ cú “phốt” đầu tiên này chính là Văn hóa An toàn Tâm lý (Psychological Safety).
Một Team thực sự mạnh không phải là Team không bao giờ mắc lỗi, mà là Team có đủ sự tin tưởng để thành viên yếu nhất (như tôi) dám lên tiếng khi họ bị kẹt.
Nếu tôi bị mắng, tôi sẽ càng sợ hãi và lần sau sẽ giấu lỗi lâu hơn. Nhưng nhờ sự động viên và không khí hợp tác, tôi không chỉ cảm thấy được chấp nhận mà còn học được kỹ năng xử lý Race Condition, một kiến thức đắt giá mà không trường lớp nào dạy.
Cuối cùng, tôi học được rằng: Sự im lặng của người mới là rủi ro lớn nhất của một Team. Hãy nói ra. Hãy hỏi. Và nếu bạn là người dẫn dắt, hãy tạo ra môi trường mà không một ai phải sợ hãi khi thừa nhận rằng mình đang mắc kẹt.
