Có những bài toán nhìn bề ngoài giống hệt nhau: dữ liệu phân tán, thao tác thủ công, nhân sự phải lặp đi lặp lại một việc, báo cáo khó theo dõi. Nhưng khi ngồi xuống nói kỹ hơn, đôi khi mình nhận ra vấn đề không nằm ở việc thiếu hệ thống, mà nằm ở chỗ chưa ai thật sự gọi tên được quy trình đang diễn ra như thế nào.
Nếu quy trình còn mơ hồ, vai trò còn chồng chéo, hoặc hôm nay làm một kiểu mai lại đổi một kiểu, thì phần mềm riêng cũng khó mà cứu được lâu dài. Nó chỉ vô tình đóng băng một sự mơ hồ vào trong một giao diện trông có vẻ bài bản hơn mà thôi.
Khi nào mình thấy làm phần mềm riêng là hợp lý
Có lẽ là khi một công việc đã đủ lặp lại, đủ ổn định, và đủ rõ để có thể nói thành lời: bước này đi trước, bước kia theo sau, dữ liệu này cần được giữ ở đây, người này nhìn thấy phần này, người kia xử lý phần khác.
Lúc đó, phần mềm không còn là một mong muốn mơ hồ kiểu “làm cái gì đó xịn hơn”, mà trở thành một cách để gói lại logic vận hành thành một thứ rõ ràng, dễ theo dõi và ít phụ thuộc hơn vào trí nhớ của từng người.
Mình nghĩ phần mềm theo yêu cầu đáng làm nhất khi nó không cố gắng thay thế việc suy nghĩ, mà bắt đầu sau khi mọi thứ quan trọng đã được nghĩ đủ kỹ.
Và có những lúc chưa nên làm
Có những tình huống mà một file chung được tổ chức lại tốt hơn, một automation nhỏ, một dashboard đơn giản, hoặc chỉ là một buổi làm rõ quy trình với nhau cũng đã giúp mọi thứ tiến thêm rất nhiều. Không phải cái gì cũng cần nhảy ngay tới một hệ thống lớn.
Có lẽ điều quan trọng nhất không phải là “có nên làm phần mềm theo yêu cầu hay không”, mà là biết mình đang muốn giải quyết điều gì, điều đó đã đủ chín chưa, và nếu làm thì nó sẽ thay đổi điều gì thật sự trong cách mình vận hành mỗi ngày.