Chuyện nghề: Kỹ sư trực máy "tự tin" quá mức, vừa nâng ly rượu thì pager reo inh ỏi

Công nghệ15 tháng 5, 2026·5 phút đọc

Một chuyên gia cơ sở dữ liệu tin rằng việc nâng cấp hệ thống đã hoàn tất tốt đẹp nên đã tận hưởng cuối tuần xem đua xe và uống rượu vang. Tuy nhiên, niềm vui ngắn chẳng tày gang khi máy gọi của anh reo lên báo ứng dụng thanh toán bị lỗi. Sau một đêm "hành xác" debug code, nguyên nhân cuối cùng lại là một thay đổi nhỏ về quyền hạn trong hệ điều hành.

Chuyện nghề: Kỹ sư trực máy "tự tin" quá mức, vừa nâng ly rượu thì pager reo inh ỏi

Chào mừng bạn đến với một số khác của chuyên mục Trực ca (On Call), nơi chúng tôi tôn vinh những chuyên gia CNTT sẵn sàng gác lại cuộc sống riêng để hỗ trợ kỹ thuật vào mọi giờ giấc.

Tuần này, hãy cùng gặp gỡ một độc giả mà chúng ta sẽ gọi giả danh là "Jemaine". Vào đầu những năm 1990, anh làm việc tại Hồng Kông với tư cách là chuyên gia cơ sở dữ liệu trên các hệ thống VAX/VMS.

"Chúng tôi đã xây dựng một ứng dụng tính cước cho một khách hàng viễn thông tại Ma Cao, và nó đã vận hành ổn định trong một thời gian dài," Jemaine kể lại. Đến khi hệ thống cần nâng cấp hệ điều hành (OS) lớn đầu tiên, Jemaine rất vui khi để đội ngũ địa phương xử lý công việc này.

Tuy nhiên, khách hàng của anh có ý kiến khác. Dù đã sắp xếp cho hai quản trị viên cơ sở dữ liệu (DBA) có mặt trong quá trình nâng cấp, họ vẫn khăng khăng đòi Jemaine phải xuất hiện.

May mắn thay, công việc này lại trùng khớp với thời điểm diễn ra Giải đua xe Grand Prix Ma Cao, và Jemaine không bắt buộc phải có mặt tại hiện trường. Do đó, khách hàng đã bố trí cho anh một phòng khách sạn, và thật tình cờ, phòng đó có tầm nhìn ra đường đua!

"Một vài người bạn đã ghé qua phòng tôi, và chúng tôi dành cả cuối tuần để xem những tay lái điên rồ lao xe quanh một đường đua phố chật hẹp vô lý," Jemaine thú nhận.

Khách hàng không gọi hay nhắn tin gì, nên sau cuộc đua, Jemaine khá tự tin rằng việc nâng cấp đang diễn ra suôn sẻ. Vì vậy, anh và bạn bè đã "nhậu" vài chai rượu vang đỏ Bồ Đào Nha ngon lành và gọi một bữa ăn thật thịnh soạn.

"Vừa lúc món tráng miệng được mang ra thì máy gọi (pager) của tôi reo lên," Jemaine kể.

Jemaine vội vã lết mình lên taxi đến văn phòng của khách hàng và tìm thấy một tình huống mà anh mô tả là "mơ hồ nhưng rõ ràng là nghiêm trọng" vì ứng dụng tính cước không khởi động được.

"Phán xét qua sự im lặng và những biểu hiện cứng ngắc, có thể thấy mọi người đang hoảng sợ trong thầm lặng," Jemaine viết.

Anh很快就得知 khách hàng đã cố gắng sửa ứng dụng bằng cách cài đặt lại OS hai lần, và giờ đây họ quyết định rằng cơ sở dữ liệu là nguồn gốc của vấn đề.

Jemaine được yêu cầu đợi trong khi các DBA cài đặt lại cơ sở dữ liệu, việc này "đ给了我 thời gian để ngồi trong một phòng phụ và tỉnh rượu một chút," anh thừa nhận.

Việc xây dựng lại cơ sở dữ liệu hoàn thành vào khoảng 2 giờ sáng, nhưng ứng dụng vẫn từ chối khởi động. Lúc này, khách hàng quay sang Jemaine.

"Tôi được triệu tập và thẩm vấn bởi đội ngũ hệ thống," anh nói, và sau khi kiểm tra nhanh, anh thấy cơ sở dữ liệu hoàn toàn khỏe mạnh — nhưng trình lập lịch hàng loạt (batch scheduler) lại không chạy.

Để điều tra vấn đề này, Jemaine yêu cầu nói chuyện với nhà phát triển chính — người mà hóa ra lại không có mặt tại hiện trường.

"Một trang tin nhắn khẩn cấp đã được gửi, và may mắn là ông ấy gọi lại ngay. Gợi ý của ông ấy là đi từng bước qua code. Điều này có nghĩa là biên dịch một chương trình COBOL khổng lồ mà tôi chưa từng thấy ở chế độ DEBUG, sau đó chạy từng bước qua nó qua điện thoại với nhà phát triển."

Đến lúc này, một vòng cung nhân viên khách hàng ngày càng lo lắng đang dõi theo từng động thái của Jemaine, và anh cảm thấy như họ đang âm thầm đổ lỗi về phía anh.

"Khoảng 4 giờ sáng, chúng tôi tìm ra điểm thất bại: việc gửi hàng đợi batch (batch queue submission). Cuộc gọi đang trả về mã lỗi null. Nhà phát triển bối rối."

"Tôi với lấy cuốn sách hướng dẫn vật lý để xem chức năng đó thực sự làm gì," Jemaine viết. "Và sau đó, vì lý do mà tôi vẫn tin là nhờ các vị thần rượu vang Bồ Đào Nha, tôi đã hỏi một câu đơn giản: 'Các bạn đã test cái này dưới tài khoản nào?'"

Nhà phát triển trả lời ngay lập tức: "Administrator."

Jemaine yêu cầu đội ngũ nâng cấp OS chạy ứng dụng với quyền quản trị (administrator privileges), và nó hoạt động ngay lập tức.

"Việc nâng cấp OS đã đưa ra yêu cầu quyền hạn mới để gửi công việc vào hàng đợi batch," Jemaine kể với On Call. Vậy nên việc này hoàn toàn không phải lỗi của anh, và anh có thể xin phép và lê bước về nhà khi mặt trời bắt đầu mọc.

"Không ai từ công ty đó bao giờ nhắc lại vụ việc với tôi nữa," anh kể. "Và tôi không nhớ tên của loại rượu chúng tôi đã uống."

Bạn đã bao giờ trực ca, nghĩ rằng không thể có gì sai sót, và sau đó bị "bắt bài"? Nếu vậy, hãy gửi email cho On Call để chúng tôi có thể kể câu chuyện của bạn vào một ngày thứ Sáu nào đó trong tương lai.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗