JLPTVNStudy sprint
Website học độc lập, không phải JLPT official.Xem nguyên tắc biên tập
Dự án Nhật

Bảo trì hệ thống cũ trong công ty Nhật: legacy system không đáng sợ nếu biết cách đọc

Giới thiệu cách làm việc với legacy system trong công ty Nhật: đọc tài liệu cũ, kiểm tra ảnh hưởng, hỏi spec và báo cáo rủi ro.

JLPTVN là website học độc lập, không phải JLPT official. Với lịch thi, đăng ký và địa điểm thi, hãy kiểm tra thêm nguồn chính thức được dẫn trong bài.

Trong bài này: chọn nhanh phần cần đọc
  1. 1Tóm tắt nhanh
  2. 2Legacy system trong công ty Nhật là gì?
  3. 3Cách tiếp cận task bảo trì
  4. 4Ví dụ dễ gặp
  5. 5Developer Việt Nam dễ hiểu sai điểm nào?
  6. 6Câu tiếng Nhật nên nhớ
  7. 7Checklist cho legacy task
  8. 8Học tiếp trên JLPTVN
  9. 9FAQ

Tóm tắt nhanh

Nhiều developer Việt Nam khi vào công ty Nhật sẽ gặp hệ thống cũ: tài liệu dài, code nhiều năm tuổi, framework cũ, rule nghiệp vụ phức tạp. Đây không phải lúc nào cũng là công việc kém giá trị. Nếu biết đọc tài liệu, kiểm tra ảnh hưởng và hỏi đúng cách, bảo trì hệ thống cũ là môi trường rất tốt để hiểu nghiệp vụ và tiếng Nhật IT.

Bài này giúp bạn chuẩn bị cách làm việc với legacy system trong dự án Nhật. Các câu về spec, bug và review có thể học thêm tại Tiếng Nhật IT.

Legacy system trong công ty Nhật là gì?

Legacy system thường là hệ thống đã vận hành lâu năm, có nhiều dữ liệu thật và nhiều quy tắc nghiệp vụ tích lũy. Nó có thể dùng công nghệ cũ, nhưng vẫn rất quan trọng với doanh nghiệp.

Đặc điểm
Code lâu năm
Vì sao cần cẩn thận
Có logic lịch sử không dễ xóa
Đặc điểm
Tài liệu cũ
Vì sao cần cẩn thận
Có thể không khớp code hiện tại
Đặc điểm
Nhiều dữ liệu thật
Vì sao cần cẩn thận
Sửa sai ảnh hưởng khách hàng
Đặc điểm
Nhiều batch
Vì sao cần cẩn thận
Lỗi có thể phát hiện muộn
Đặc điểm
Ít test tự động
Vì sao cần cẩn thận
Cần manual test và impact analysis
Đặc điểm
Nghiệp vụ phức tạp
Vì sao cần cẩn thận
Một rule nhỏ có thể ảnh hưởng nhiều màn hình

Trong dự án Nhật, bảo trì hệ thống cũ thường đi kèm từ 保守, 運用, 改修, 影響調査.

Cách tiếp cận task bảo trì

Khi nhận task sửa hệ thống cũ, đừng mở code và sửa ngay. Hãy đi theo thứ tự:

  1. Đọc ticket và mục tiêu nghiệp vụ
  2. Kiểm tra tài liệu liên quan
  3. Tìm nơi code đang xử lý logic tương tự
  4. Kiểm tra dữ liệu thật hoặc dữ liệu test
  5. Xác định phạm vi ảnh hưởng
  6. Hỏi lại nếu tài liệu và code không khớp
  7. Sửa nhỏ, test kỹ, ghi rõ nội dung thay đổi

Điểm quan trọng là 影響範囲. Với hệ thống cũ, một function có thể được nhiều màn hình hoặc batch dùng chung. Sửa một chỗ có thể làm hỏng phần khác.

Ví dụ dễ gặp

Ticket yêu cầu đổi rule tính phí cho khách hàng loại A. Developer tìm hàm calculateFee và sửa trực tiếp. Sau đó QA phát hiện khách hàng loại B cũng bị đổi phí vì dùng chung hàm.

Cách làm tốt hơn:

Bước
Kiểm tra caller
Việc nên làm
Hàm đang được màn hình/batch nào gọi
Bước
Kiểm tra condition
Việc nên làm
Rule mới chỉ áp dụng loại A hay tất cả
Bước
Hỏi spec
Việc nên làm
Nếu loại B thì giữ logic cũ đúng không
Bước
Test regression
Việc nên làm
Test cả loại A và loại B
Bước
Ghi PR
Việc nên làm
Nêu rõ phạm vi ảnh hưởng đã kiểm tra

Trong dự án Nhật, câu "影響範囲を確認しました" rất quan trọng, nhưng chỉ nên nói khi bạn thật sự đã kiểm tra.

Developer Việt Nam dễ hiểu sai điểm nào?

1. "Code cũ xấu nên cứ refactor mạnh"

Refactor lớn trong hệ thống cũ có rủi ro cao. Nếu task chỉ yêu cầu sửa bug nhỏ, hãy tách refactor thành đề xuất riêng nếu cần.

2. "Tài liệu cũ chắc chắn sai"

Không nên kết luận nhanh. Có thể code mới sai, tài liệu cũ đúng, hoặc cả hai đều thiếu update. Hãy hỏi lại bằng bằng chứng cụ thể.

3. "Không có test tự động thì chỉ cần test case mình sửa"

Legacy system dễ có ảnh hưởng ẩn. Cần test các flow liên quan, đặc biệt function dùng chung, batch và report.

4. "Hệ thống cũ không cần học sâu"

Ngược lại, hiểu hệ thống cũ giúp bạn hiểu nghiệp vụ, dữ liệu và lý do thiết kế. Đây là lợi thế lớn khi làm với công ty Nhật.

Câu tiếng Nhật nên nhớ

日本語
保守対応を行います。
かな
ほしゅたいおうをおこないます
Nghĩa tiếng Việt
Tôi sẽ xử lý bảo trì.
Dùng khi nào
Task maintenance
日本語
影響範囲を調査します。
かな
えいきょうはんいをちょうさします
Nghĩa tiếng Việt
Tôi sẽ điều tra phạm vi ảnh hưởng.
Dùng khi nào
Trước khi sửa
日本語
既存処理を確認します。
かな
きそんしょりをかくにんします
Nghĩa tiếng Việt
Tôi sẽ kiểm tra xử lý hiện tại.
Dùng khi nào
Đọc code cũ
日本語
既存仕様と異なります。
かな
きそんしようとことなります
Nghĩa tiếng Việt
Khác với spec hiện tại.
Dùng khi nào
Khi phát hiện lệch
日本語
念のため確認させてください。
かな
ねんのためかくにんさせてください
Nghĩa tiếng Việt
Cho tôi xác nhận để chắc chắn.
Dùng khi nào
Khi hỏi cẩn thận
日本語
回帰テストを実施しました。
かな
かいきてすとをじっししました
Nghĩa tiếng Việt
Tôi đã thực hiện regression test.
Dùng khi nào
Báo test
日本語
修正範囲を限定します。
かな
しゅうせいはんいをげんていします
Nghĩa tiếng Việt
Tôi sẽ giới hạn phạm vi sửa.
Dùng khi nào
Tránh sửa lan rộng

Checklist cho legacy task

  • Đã đọc tài liệu, ticket và comment mới nhất chưa?
  • Đã tìm code tương tự hoặc xử lý hiện tại chưa?
  • Đã kiểm tra function dùng chung chưa?
  • Đã xác định màn hình, API, batch bị ảnh hưởng chưa?
  • Đã hỏi khi tài liệu và code không khớp chưa?
  • PR có ghi rõ test regression chưa?

Học tiếp trên JLPTVN

Đọc thêm non-functional requirements, review trong dự án Nhật, bug report tiếng Nhật. Luyện mẫu câu tại bug, reviewspec.

Sau khi đọc, làm bài luyện IT và lưu câu sai ở Review để quay lại đúng điểm yếu.

FAQ

Legacy system có phải lúc nào cũng công nghệ rất cũ không?

Không. Có hệ thống dùng công nghệ tương đối mới nhưng code và nghiệp vụ đã tích lũy nhiều năm, vẫn được xem là legacy theo nghĩa bảo trì khó.

Có nên refactor khi sửa bug legacy không?

Chỉ nên refactor trong phạm vi cần thiết và có test đủ. Refactor lớn nên tách riêng để PM đánh giá rủi ro.

Làm legacy có giúp tăng tiếng Nhật IT không?

Có. Bạn sẽ gặp nhiều từ về nghiệp vụ, tài liệu, bug, vận hành, release và báo cáo hơn so với task nhỏ thuần frontend.

Đọc tiếp

Bài liên quan để học tiếp đúng mạch

Học tiếp sau bài này

Nối bài viết IT với một phiên thực hành 15 phút

Nếu bài viết liên quan công việc IT, hãy kiểm tra lộ trình trước rồi luyện mẫu câu dự án ngắn. Những câu sai sẽ quay lại trang ôn tập để bạn xử lý sau.

  1. 1. Chọn lộ trình IT

    Xác nhận bạn cần N5, N4 hay mẫu câu công việc trước.

  2. 2. Luyện tình huống dự án

    Làm bài IT Japanese mini trong một phiên ngắn.

  3. 3. Lưu câu cần ôn

    Đưa lỗi sai về Review để dùng lại trong công việc.