Căn hộ yên tới mức tiếng gõ bàn phím nghe to hơn thường ngày. Một tab mở sản phẩm, một tab mở log, tab khác là mẩu ghi chép còn dang dở về một quyết định chưa ai hỏi. Build đã qua, tính năng chạy được, vậy mà căn phòng vẫn có chút nặng nề khó gọi tên. Làm phần mềm một mình đôi khi lạ như thế: tự do và trách nhiệm ngồi sát nhau trên cùng chiếc bàn.
Làm một mình có cái hay rất thật. Quyết định nhanh. Codebase dễ giữ liền mạch vì một người nắm toàn bộ hình dáng của nó trong đầu. Không cần xếp lịch họp để đổi một chiếc nút, không chờ hội đồng duyệt một lần refactor, không viết cả chuỗi tin nhắn chỉ để giải thích một cái tên. Ít nhất trong một thời gian, tốc độ ấy rất dễ chịu: cuối cùng mình cũng có thể làm mà không phải chờ.
Rồi mặt kia lộ ra. Không có người xem lại bắt gặp giả định mình đã mang theo suốt ba ngày. Không có đồng đội bảo luồng này khó hiểu. Không có người làm sản phẩm hỏi tính năng ấy có thật sự đáng làm. Không có kỹ sư nhiều kinh nghiệm chất vấn vì sao schema phải uốn quanh một edge case. Khi chỉ có một người, nhiều vòng phản hồi trở thành tùy chọn; mà thứ gì tùy chọn cũng rất dễ bị bỏ qua lúc mệt.
Nỗi cô đơn không chỉ nằm ở cảm xúc mà còn nằm trong cấu trúc công việc. Mọi quyết định đều quay về một chỗ: phạm vi sản phẩm, UX, database, triển khai, hỗ trợ, bảo mật, giá, tài liệu và phân loại bug. Chuyển ngữ cảnh liên tục trở thành một ngày bình thường. Khi có lỗi, người viết, vận hành, giải thích và sửa có thể là cùng một người. Quyền làm chủ vì thế rất rõ, nhưng khoảng trống để nghỉ cũng lặng lẽ co lại.
Một cách tự bảo vệ thiết thực là viết như thể ngày mai sẽ có người mới vào dự án. Một nhật ký quyết định ngắn, hướng dẫn cài đặt, danh sách kiểm tra trước phát hành, danh sách rủi ro đã biết hay sơ đồ kiến trúc bé thôi cũng tạo ra trí nhớ thứ hai ở ngoài đầu. Tài liệu không chỉ dành cho tổ chức đông người. Với solo developer, nó giúp mình của ngày mai bớt lệ thuộc vào năng lượng của mình hôm nay.
Một cách khác là mượn một vòng phản biện từ bên ngoài. Một người bạn đáng tin có thể thử luồng sử dụng. Cộng đồng có thể trả lời câu hỏi kỹ thuật đủ hẹp. Chuyên gia thuê ngoài có thể xem phần code nhạy cảm về bảo mật. AI có thể gợi ra ca kiểm thử còn thiếu hoặc tên chưa rõ, miễn là lời khuyên ấy được kiểm chứng. Không lựa chọn nào thay hoàn toàn một đội ngũ, nhưng chúng phá thế tự nói tự nghe. Làm một mình không đồng nghĩa với làm mà không ai xem lại.
Tách thời gian làm sản phẩm khỏi thời gian vận hành cũng giúp ngày làm việc có hình dáng. Khi thông báo nào cũng có thể thành việc khẩn, mình rất dễ ở trạng thái canh chừng suốt ngày. Solo developer cần vài nếp nhỏ mà tổ chức lớn thường có nhờ quy trình: ghi kế hoạch mỗi tuần, dành khung giờ cố định để phân loại bug, dùng danh sách kiểm tra trước phát hành, viết mẩu ghi chú trước khi nghỉ và định nghĩa rõ chuyện gì đáng phản ứng ngay. Đây không phải thói quen quan liêu; nó giữ tự do khỏi tan thành cảnh giác liên tục.
Chuẩn chất lượng cũng cần vừa tử tế vừa trung thực. Một người không thể dựng mọi lớp bảo vệ như doanh nghiệp lớn, nhưng vài nền tảng không nên đem ra mặc cả: sao lưu, kiểm thử cho luồng quan trọng, observability vừa đủ, bí mật được giữ an toàn, các gói phụ thuộc được cập nhật và có đường phục hồi. Mục tiêu không phải giả làm một tổ chức lớn. Mục tiêu là bảo vệ những chỗ mà lỗi nhỏ có thể làm mất lòng tin, mất tiền hoặc rút cạn quá nhiều sức.
Còn một cái bẫy kín đáo hơn: đồng nhất sản phẩm với giá trị bản thân. Khi mọi thứ do một người làm, mỗi bug dễ nghe như lời phán xét nhắm vào chính mình. Một người dùng rời đi, một tuần tiến chậm hay một màn hình vụng về đều có vẻ quay về cùng một người. Nhưng phần mềm là hệ thống sống trong nhiều ràng buộc, không phải tấm gương đo giá trị của người viết. Một luồng hỏng là một luồng hỏng; nó cần được sửa, không cần ai tự trừng phạt.
Con đường solo bền hơn khi thôi phải chứng minh rằng mình hoàn toàn độc lập. Hỏi ý kiến sớm hơn. Cho người khác xem một bản demo nhỏ. Ghi quyết định xuống. Thuê người giúp ở phần rủi ro cao. Thiết kế mặc định để bản thân có thể nghỉ. Những solo developer vững nhất tôi từng gặp không phải người chẳng bao giờ cần ai; họ là người sắp xếp công việc sao cho trợ giúp, bằng chứng và khả năng phục hồi luôn còn cửa đi vào.
Khi đang xây một thứ gì đó một mình, câu đáng nghĩ không hẳn là mình có gánh nổi tất cả hay không. Trong một quãng thời gian, câu trả lời có thể là có. Điều quan trọng hơn là vòng phản hồi, tài liệu, thói quen hay mối quan hệ nào sẽ làm công việc bớt cô lập và bền hơn. Đôi khi khác biệt chỉ là có một người xem lại, một nhật ký thay đổi công khai, một ghi chép mỗi tuần, hoặc quyền đóng laptop trước khi mọi vấn đề được giải xong.