Để dễ tìm lại cho công việc về sau
Kỷ niệm một tình huống công việc.
Từ dạo ra Tết tôi luôn đi làm sớm, hôm nay là đi làm sớm nhất công ty luôn. Đang định thảnh thơi uống cốc nước thì phát hiện channel Slack trao đổi với khách hàng (KH) bật sáng! Có việc rồi đây, vào xem nào.
お疲れ様です。
配送番号:36xxxx252 の受注番号を調べて頂きたいです。
よろしくお願いします。
Ý là hãy tìm cái 受注番号 từ cái 配送番号 đã cho, đơn giản vậy thôi. Làm thế nào nhỉ? Tôi nhớ mang mang hồi trước đã làm một cái cũng tương tự rồi, nhưng mà phải nhờ Dev. làm cơ. Dù sao cũng phải phản hồi gì đó, tôi thả tạm một cái icon để react vào message của khách rồi suy nghĩ tiếp.
I. Lục tìm quá khứ
Bản tính tò mò thiên bẩm khiến tôi muốn xem lại cái vụ “tương tự” mang máng nhớ ở trên. Vụ đó hình như cũng đã khá lâu rồi, nhưng do dùng nhiều nên tôi cũng có kinh nghiệm với Slack kha khá. Vậy thử dùng tính năng search của Slack xem nào.
Đầu tiên tôi thử tìm kiếm theo hướng may mắn. Search luôn trên channel trao đổi với khách hàng hiện tại bằng đúng từ khoá khách hàng dùng cho lần này: 配送番号 (ship no.), nếu lần trước khách hàng cũng với từ 配送番号 này thì trúng số.
Nhưng mà kết quả chỉ tìm ra có mỗi cái message mới nhất vừa rồi! Vậy là không thấy.
.Thế thì đành tìm theo từ khoá còn lại thử xem
tìm cái 受注番号 từ cái配送番号đã cho
À, lần này thì tìm ra nhiều kết quả: Ngoài chính message khách hàng vừa gửi, tôi tìm thấy một message nữa cũng từ KH, cũng là yêu cầu tìm 受注番号, tuy nhiên là tìm với một thông tin khác (送り状no.) chứ không phải thông tin 配送番号 như lần này!
お疲れ様です。
送り状no.516xxxx31 の受注番号を調べて頂けますか?
ご確認お願いします。
— msg a. —
Vì khác từ khoá nên không thể kết luận chắc chắn là cùng loại yêu cầu được.
Vì rằng từ tiếng Anh của 配送番号 là ship no., tôi thử
. Tìm kiếm trên Slack tại channel nội bộ của team (t. Việt) với từ khoá “ship”, ra khá nhiều kết quả, tuy nhiên kết quả liên quan trực tiếp thì chỉ có một message từ Dev. trả lời PO:
ship no 516xxxxx31 là của order 18xxxxx8 ạ
— msg b. —
. Tìm kiếm trên JIRA, nơi có ticket các task team phải làm, tuy nhiên không tìm ra kết quả nào! Có vẻ việc log task chưa được đầy đủ 🙂
Xem lại một lần nữa, tôi có thể thấy kết quả tìm kiếm msg. a và msg. b đều cùng ngày, cùng cho một vụ việc, tuy nhiên vẫn là lần đó khách hàng yêu cầu tìm với 送り状no., cái mà Dev. gọi là ship no, không match với yêu cầu tìm với 配送番号 như lần này!
II. Vận dụng tài liệu
Vì không có căn cứ chắc chắn trong quá khứ nên tôi không thể loại bỏ khả năng Yêu cầu từ KH lần này là một Yêu cầu mới (thay vì là một Yêu cầu team đã từng xử lý). Tôi có thể lựa chọn đợi Dev. đến công ty xử lý, tuy nhiên vì còn khoảng hơn 1h đồng hồ nữa điều đó mới xẩy ra nên tôi thử xoay xở tiếp.
Yêu cầu lần này xoay quanh một dữ liệu cơ bản của dự án là dữ liệu 受注 (Order), tôi cũng từng được ngó định nghĩa cụ thể Order detail rồi, giờ lục lại tài liệu xem sao:
. Search trong tài liệu Order detail nói trên với 配送 thì ra dòng 40 ở trong ảnh dưới. Ở đây chỉ ra nó được lưu trong field tên là ship_id ở table packages !
Do cái tài liệu Order detail này là “từ điển nghiệp vụ” tham chiếu đến các filed thực tế (physical implementation) trong cơ sở dữ liệu của dự án, hiển nhiên nó vô cùng đáng tin cậy. Vì thế, để có thêm thông tin, tôi thử
. Search trong tài liệu Order detail với từ khoá 送り状no, không có kết quả nào
. Search trong tài liệu Order detail với từ khoá ship_no, cũng không có kết quả nào
Đến đây tôi cũng nhớ lại lần trước khi đối ứng Yêu cầu với “ship no” (msg b.), Dev. đã thực hiện query thông tin từ Cơ sở dữ liệu, trong thread Slack cùng chỗ msg b. ở trên vẫn còn nguyên message của tôi sau đó nhờ Mgr. approve việc tôi được cấp một account read only để về sau có thể tự điều tra được.
III. Nhận định tình hình
OK, như vậy tình huống cho đến giờ là:
+ Trước đây KH đã từng yêu cầu với 送り状no, cái mà Dev. gọi là “ship no”
+ Lần này KH yêu cầu với 配送番号
+ Trong “từ điển nghiệp vụ” thì có cặp data là 配送 No. = ship_id, 配送 No. thì đồng nghĩa với từ KH mà yêu cầu lần này
+ Trong “từ điển nghiệp vụ”, không có cả 送り状no. lẫn “ship no”, tức là trong Cơ sở dữ liệu cũng không có “ship no”
+ Chắc chắn Dev. đã tìm kiếm với cái mà Dev. gọi là “ship no” từ Cơ sở dữ liệu
Vậy khả năng cao tất cả đống thuật ngữ trên chỉ là một và Yêu cầu lần này của KH thực chất vẫn giống như yêu cầu lần trước, chỉ có dùng từ ngữ khác nhau.
IV. Get your hands dirty
Với nhận định trên, tôi quyết định thử tự làm. Message quá khứ trên slack đã nhắc nhở rằng chính tôi muốn có thể tự mình điều tra, và hôm nay tình huống này đã thực sự xảy đến.
Hôm trước Dev. cũng đã chia sẻ tài liệu hướng dẫn kết nối Cơ sở dữ liệu, sau đó tôi đã tự mình thử, fail, nhờ Dev. support, vẫn fail và sau đó chính tôi đã vượt qua vấn đề connect database bằng kinh nghiệm từ một dự án xa xưa khác (cần update lại access permission của file key sau khi download), sau đó dẫn đến việc Dev. đã bổ sung thêm một bước trong tài liệu hướng dẫn.
Vậy là tôi mở lại trình connect database với account read-only, vẫn fail, hôm trước tôi đã quên save lại config đúng! Lại check lại hướng dẫn, giải quyết vấn đề, tôi đã kết nối được. Bước tiếp theo là dựa vào tài liệu Order detail nói trên để biết phải query từ bảng nào, trường nào.
Tèn ten…. , thế là ra kết quả.
Cũng đơn giản nhỉ, đến đây, có Order number rồi, tôi có thể sử dụng màn hình Web để kiểm tra một lần nữa, và đây là bằng chứng khẳng định nhận định và cách làm của tôi là đúng:
Trên màn hình Order detail tương ứng hiển thị lại đúng mẩu data mà KH đã cung cấp
V. Tự giúp mình lần sau
Tôi gửi các kết quả điều tra của mình cho team để Dev. review. Tuy nhiên, tôi không dừng lại ở đó.
Dù ra được kết quả cần tìm, lần này tôi đã phải mất nhiều thời gian tìm kiếm Slack, tìm kiếm tài liệu, tìm kiếm trong tài liệu và cố gắng kết nối những mẩu thông tin thu nhặt được với nhau.
Lần sau tình huống tương tự lại có thể xẩy ra. Tháng trước nó đã xẩy ra và nhỡ lần sau 2 tháng nữa nó mới xẩy ra thì chắc chắn tôi sẽ không còn nhớ những gì mình đã làm ngày hôm nay, nhưng tôi cũng không muốn mình lại phải tốn bằng này thời gian hoặc nhiều hơn. Tôi muốn mất ít thời gian hơn.
Vậy tôi có thể làm gì?
Suy xét lại, lần này tôi đã bị mất thời gian ở 2 chỗ:
+a Tìm kiếm vụ việc tương tự: Việc search slack lần đầu tiên của tôi đã không tìm thấy vụ việc quá khứ
+b Tìm và đọc tài liệu để biết cần query field nào, table nào.
Vậy tôi sẽ để lại hướng dẫn để hỗ trợ chính tôi trong tương lai có thể giải quyết hai chỗ trên một cách nhanh chóng:
+ Viết một hướng dẫn step by step cho +b
+ Lưu lại một hai message trên Slack cho +a. Về sau tôi sẽ chỉ cần search Slack với chính xác từ khoá KH cung cấp là sẽ ra ngay tình huống hôm nay cùng với hướng dẫn step by step ở trên.
Kết luận: