Có những người ảnh hưởng đến mình bằng một câu nói.
Có những người ảnh hưởng bằng một giai đoạn làm việc chung.
Và có những người phải rất nhiều năm sau mình mới nhận ra: cách mình suy nghĩ, cách mình đặt câu hỏi, thậm chí cách mình nhìn một vấn đề từ đầu đến cuối, vẫn còn dấu tay của họ ở trong đó.
Với tôi, chị Đỗ Việt Nga là một người như vậy.
Tôi gặp chị Nga vào cuối những năm 1990, khi còn rất trẻ và mới bước vào nghề phần mềm. Khi đó chị đã là một người có uy tín trong lĩnh vực Phân tích thiết kế hệ thống, vừa làm nghiên cứu, vừa giảng dạy, vừa trực tiếp dẫn dắt những dự án tin học quản lý lớn.
Sau này nhìn lại, tôi mới hiểu mình đã may mắn gặp đúng một người thuộc vào một thế hệ rất đặc biệt của tin học Việt Nam.
Malcolm Gladwell trong Outliers từng chỉ ra một “cửa sổ thế hệ” đặc biệt của ngành máy tính: những người sinh quanh 1954–1956, vừa đủ trẻ để bước vào cuộc cách mạng máy tính khi nó mở ra, vừa đủ trưởng thành để làm được điều gì đó với cơ hội ấy. Ở Việt Nam cũng có một thế hệ như vậy. Đỗ Việt Nga thuộc thế hệ đó.
Chị Nga xuất thân từ nhóm những người có năng lực tư duy toán học hàng đầu Việt Nam trong thế hệ của mình. Sau đó chị được đào tạo về toán và máy tính ở Liên Xô, rồi trở về làm việc tại Viện Khoa học Tính toán và Điều khiển, tiền thân của Viện Công nghệ Thông tin.
Đó là thời kỳ máy tính ở Việt Nam còn là một thứ rất mới. Những người như chị không chỉ “dùng máy tính”. Họ phải tự xây dựng rất nhiều thứ từ đầu.
Trong nhóm phát triển phần mềm cho những máy tính đầu tiên của Viện, chị Nga tham gia xây dựng ngôn ngữ Basic Đồi Thông. Cái tên “Đồi Thông” rất giản dị: khu Viện ở đường Hoàng Quốc Việt ngày ấy còn là một đồi thông. Nghe bây giờ thì xa xôi, nhưng về bản chất công việc, có một nét tương tự với việc Bill Gates và Paul Allen viết BASIC cho Altair: phần cứng chỉ là một cái máy. Muốn con người thực sự dùng được nó, phải có một lớp ngôn ngữ và phần mềm ở giữa.
Từ khá sớm, chị Nga đã đi sang một câu hỏi khó hơn: Làm thế nào để biến một hoạt động quản lý ngoài đời thật thành một hệ thống thông tin có thể vận hành bằng máy tính?
Đó cũng là nơi tôi gặp chị. Cuối những năm 1990, chị phụ trách Phòng Tin học Quản lý của Viện Công nghệ Thông tin – một nhánh thiên rất mạnh về phân tích hệ thống, mô hình hóa dữ liệu và thiết kế các hệ thống thông tin quản lý.
Điều tôi học được từ chị theo tôi đến tận bây giờ, gói lại chỉ trong một nguyên tắc:
Đừng bắt đầu bằng code. Hãy bắt đầu bằng việc hiểu hệ thống.
Tôi nhớ lần đầu tiên bị chị mắng. Tôi còn trẻ, nhận được yêu cầu là cắm đầu vào gõ code. Chị liếc qua màn hình, không nói về thuật toán, chỉ buông một câu: “Thằng củ chuối!”
Rồi chị bắt tôi đóng máy lại, lấy giấy ra vẽ để trả lời chị rằng cái “dòng này nó chạy đi đâu”.
Kể từ sau năm 1997, bộ từ vựng làm nghề của tôi có thêm cụm từ đó. “Thằng củ chuối” không phải là một câu chửi. Với tôi, nó là một cái linter chạy bằng cơm. Mỗi khi tôi thấy mình đang cắm đầu vào code khi còn chưa hiểu gì về nghiệp vụ, trong đầu tôi lại nghe thấy câu đó.
Một phần mềm chỉ tốt khi người thiết kế hiểu đủ sâu thứ đang diễn ra ngoài đời thực. Ai làm gì. Thông tin đi từ đâu tới đâu. Một trạng thái chuyển thành trạng thái khác theo điều kiện nào. Cái gì là bản chất. Cái gì chỉ là trường hợp hiện tại. Cái gì có thể thay đổi sau này mà kiến trúc vẫn phải chịu được.
Nghe thì đơn giản. Nhưng càng làm lâu, tôi càng thấy phần khó nhất chưa bao giờ nằm ở mã lệnh. Nó nằm ở chỗ nhìn ra cấu trúc phía sau một đống nghiệp vụ hỗn độn.
Tôi đã trực tiếp tham gia hai dự án mà chị Nga giữ vai trò quan trọng trong việc phân tích và thiết kế.
Một là Hệ điều hành tác nghiệp, phát triển từ chương trình Tin học hóa quản lý hành chính giai đoạn 1996-1998. Tập tài liệu phân tích mà chị là người viết chính, theo những gì tôi còn nhớ, khi in ra đã dày hơn 400 trang A4. Từ bộ phân tích ấy, đội ngũ xây dựng một hệ thống trên nền Lotus Notes/Domino và triển khai cho Văn phòng UBND tỉnh hoặc bộ/ngành. Trong đó có một bản được triển khai cho Văn phòng Bộ Thương mại từ năm 1998.
Bộ Thương mại sau này nhập với Bộ Công nghiệp thành Bộ Công Thương. Tổ chức thay đổi. Người làm hệ thống cũng thay đổi. Chị Nga mất năm 2010. Hệ thống ấy vẫn chạy thêm nhiều năm nữa, mãi khoảng 2015 mới được thay thế.
Công nghệ đã cũ từ lâu. Điều đáng nói là thiết kế sinh ra từ hơn 400 trang phân tích ấy vẫn chịu được những thay đổi của tổ chức và nghiệp vụ trong gần hai thập niên.
Dự án thứ hai ảnh hưởng tới tôi còn sâu hơn.
Năm 1999, VIT-Infotech trúng thầu xây dựng BVLife – Hệ thống quản lý bảo hiểm nhân thọ của Bảo Việt. Khi bắt đầu, Bảo Việt Nhân thọ chỉ có khoảng bốn sản phẩm. Đến khi triển khai xong năm 2003, số sản phẩm đã tăng lên khoảng mười sáu. Những năm sau đó còn tăng lên rất nhiều nữa.
Nếu thiết kế theo bốn sản phẩm ban đầu, chỉ vài năm là hệ thống sẽ vỡ.
Nhưng đó không phải cách chị Nga thiết kế. Sản phẩm bảo hiểm được mô hình hóa thành các thành phần và quy tắc đủ tổng quát để khi xuất hiện sản phẩm mới, phần lớn không cần bẻ code ở lõi ra viết lại. Chỉ cần cấu hình lại các thuộc tính và quy tắc tương ứng. Công nghệ lúc đó chẳng có gì hào nhoáng: Oracle 7 RDBMS & Forms. Nhưng hệ thống sống hơn mười lăm năm. Bảo Việt Nhân thọ về sau phải mất nhiều lần làm lại mới thay được nó.
Tôi luôn nhớ bài học rất lạnh lùng này: công nghệ có thể cũ rất nhanh, nhưng một cấu trúc đúng có thể sống lâu hơn công nghệ rất nhiều.
Trong dự án BVLife, việc tôi làm được tốt nhất không phải là code. Tôi mô hình hóa toàn bộ vòng đời của một sản phẩm bảo hiểm từ đầu đến cuối thành một flowchart trên một tờ giấy A0. Sau đó có tám sản phẩm thì thành tám tờ A0, dán kín lên tường. Nhìn vào đó, từ người phân tích nghiệp vụ cho đến người lập trình đều thấy toàn bộ logic chạy như thế nào.
Và vài lần anh Trường “béo” – Trưởng phòng nghiệp vụ của Bảo Việt Nhân thọ khi đó, đã kề cà mời ăn mời rượu tôi chỉ để xin file Visio gốc. Lý do rất đơn giản: Bảo Việt Nhân thọ đã kinh doanh gần mười năm, nhưng phòng nghiệp vụ chưa từng vẽ được toàn bộ nghiệp vụ của mình thành một sơ đồ như vậy.
Lúc đó tôi thấy hơi buồn cười. Nhiều năm sau tôi mới hiểu đó chính là thứ chị Nga đã dạy mình. Phân tích hệ thống không phải là ngồi nghe người dùng kể họ muốn một cái màn hình như thế nào rồi về làm đúng cái màn hình đó. Phải bóc toàn bộ hoạt động ra. Tìm quy luật. Tách cái bất biến khỏi cái có thể thay đổi. Rồi mới thiết kế.
Tôi còn nhìn thấy ít nhất một dự án lớn khác do chị dẫn dắt: hệ thống phần mềm Thuế Giá trị Gia tăng của Tổng cục Thuế năm 1997.
Ba hệ thống ở ba lĩnh vực rất khác nhau: thuế, quản lý hành chính và bảo hiểm nhân thọ. Điểm giống nhau là chúng đều có tuổi thọ rất dài. Một lần có thể là may. Ba lần thì khó gọi là may nữa.
Sau này tôi làm rất nhiều phần mềm khác. Công nghệ thay đổi hết. Từ client-server sang web. Từ database tập trung sang distributed systems. Từ phần mềm doanh nghiệp sang cloud, microservices, API và đủ thứ tên gọi mới.
Nhưng một số nguyên tắc tôi dùng gần như không thay đổi. Đặc biệt là câu hỏi: Mình đang thiết kế cho cái đang tồn tại hôm nay, hay đang thiết kế cho bản chất của hệ thống để nó còn chịu được những thay đổi ngày mai?
Gần đây nhất, khi nhìn lại kiến trúc của VIEApps NGX – nền tảng mà tôi đặt kiến trúc từ năm 2017 cho các hệ thống phân tán và đến giờ vẫn đứng khá vững trước nhiều dạng bài toán khác nhau, tôi lại nhận ra một đường nối đã kéo dài gần ba mươi năm.
Từ những tờ A0 trên tường của BVLife. Từ những bài học Phân tích thiết kế hệ thống. Từ câu “thằng củ chuối” của chị Nga.
Có những người thầy để lại cho học trò một môn học. Có người để lại một nghề. Chị Nga để lại cho tôi một cách nhìn.
Chị đã mất từ lâu. Phần lớn những thứ về chị trên Internet bây giờ cũng rất khó tìm. Một vài bài viết, một vài công trình cũ, vài cái tên nằm trong lịch sử những chiếc máy tính đầu tiên của Việt Nam.
Nhưng có một loại di sản không nằm trên Internet. Nó nằm trong cách những người từng được chị dạy tiếp tục làm việc.
Mỗi khi tôi đứng trước một bài toán phức tạp, phản xạ đầu tiên vẫn không phải là “dùng công nghệ gì”, mà là lấy bút dạ, đứng trước tấm bảng trên tường và vẽ lại toàn bộ hệ thống xem nó thực sự vận hành như thế nào.
Khi trong đầu lại vang lên câu “thằng củ chuối” quen thuộc, tôi biết một phần của cách suy nghĩ ấy đến từ đâu.
Và gần ba mươi năm sau, tôi vẫn đang dùng nó – ngay cả với những thứ hào nhoáng nhất của kỷ nguyên AI, mạng xã hội hay direct-response marketing.














