Giữa lập trình viên tự do, một đội nhỏ vài người và một công ty lớn, giá chỉ là khác biệt dễ thấy nhất. Khác biệt đắt nhất là rủi ro: người tự do mang rủi ro một người (ốm, bận, bỏ việc), đội nhỏ mang rủi ro quy trình và tài chính mỏng, công ty lớn mang rủi ro dự án của bạn nằm cuối hàng ưu tiên và phải đi qua nhiều lớp trung gian. Chọn đúng là chọn loại rủi ro mình chịu được với việc cụ thể đang cần, rồi viết hợp đồng để giảm đúng loại rủi ro đó.
Sáu loại rủi ro, ba lựa chọn

| Rủi ro | Lập trình viên tự do | Đội nhỏ (vài người) | Công ty lớn |
|---|---|---|---|
| Mất người giữa chừng | Cao: một người là cả dự án | Trung bình | Thấp, có người thay |
| Không ai kiểm tra chất lượng | Cao: tự viết tự kiểm | Trung bình | Thấp nếu có kiểm thử riêng |
| Hiểu sai yêu cầu qua trung gian | Thấp: nói thẳng với người làm | Thấp | Cao hơn: qua kinh doanh, quản lý dự án |
| Dự án bị xếp ưu tiên thấp | Tuỳ người | Thấp: dự án của bạn là lớn với họ | Cao với dự án nhỏ |
| Không có pháp nhân, hoá đơn công ty | Thường gặp | Tuỳ | Hiếm |
| Bảo hành dài hạn | Khó đảm bảo | Tuỳ tài chính công ty | Có nhưng theo quy trình |
Việc nào hợp với ai
Lập trình viên tự do
Hợp với việc nhỏ, rõ ràng, có đầu và cuối trong vài tuần: sửa một tính năng trên website có sẵn, viết một công cụ nhập liệu, nối hai phần mềm qua API đã có tài liệu. Không hợp với hệ thống cốt lõi mà doanh nghiệp sẽ dựa vào nhiều năm, vì bảo hành và bảo trì phụ thuộc vào một người. Trang Mô hình hợp tác của ALODEV cũng ghi thẳng: chỉ cần sửa vài lỗi nhỏ, không rõ việc thì một lập trình viên tự do có thể nhanh và rẻ hơn, đổi lại không có bảo hành dài.

Đội nhỏ
Hợp với phần mềm vừa, cần làm việc sát và thay đổi nhanh: người mua nói chuyện thẳng với người viết mã, dự án được chú ý. Rủi ro nằm ở độ bền: đội có đủ vai trò (thiết kế, lập trình, kiểm thử) không, và nếu một người nghỉ thì ai nắm mã. Kiểm bằng cách hỏi quy trình soát mã và nơi lưu mã nguồn.
Công ty lớn
Hợp với dự án lớn, nhiều phân hệ, cần nhiều người song song hoặc có yêu cầu thủ tục đấu thầu. Rủi ro là dự án vừa và nhỏ đi qua nhiều lớp, người bán hàng hứa một đằng, đội làm hiểu một nẻo. Kiểm bằng cách xin gặp người sẽ trực tiếp làm trước khi ký.
Giảm rủi ro sau khi đã chọn
| Rủi ro chính | Cách giảm |
|---|---|
| Mất người | Mã nguồn đẩy lên kho của doanh nghiệp hằng ngày; tài liệu viết dần theo đợt, không dồn cuối |
| Chất lượng | Nghiệm thu từng chặng theo kịch bản; môi trường thử tách khỏi hệ thống thật |
| Hiểu sai qua trung gian | Có một đầu mối kỹ thuật tham dự buổi rà soát bản thử |
| Ưu tiên thấp | Lịch bản thử cố định trong hợp đồng; điều khoản khi chậm tiến độ |
| Pháp lý, hoá đơn | Hợp đồng với pháp nhân; hoá đơn theo từng đợt thanh toán |
| Bảo hành | Phạm vi bảo hành, thời gian phản hồi theo mức nghiêm trọng ghi bằng văn bản |
Dòng đầu tiên là điều khoản rẻ nhất mà đáng giá nhất: mã nguồn nằm trên kho của doanh nghiệp ngay từ đầu. Khi đó, dù người làm là ai và có biến cố gì, phần đã làm vẫn ở phía bạn. Trang Quy trình của ALODEV ghi mã nguồn nằm trên kho của doanh nghiệp là một phần của giai đoạn bàn giao; nên đòi điều đó từ ngày đầu với bất kỳ nhà cung cấp nào.
Về giá
Giá theo giờ của người tự do thấp hơn công ty vì không gánh chi phí quản lý dự án, kiểm thử, pháp nhân và bảo hành. Khi so, hãy cộng lại những việc đó: ai sẽ kiểm thử, ai viết tài liệu, ai nghe điện thoại khi hệ thống lỗi lúc nửa đêm. Nếu câu trả lời là "chính mình", thời gian đó cũng là tiền.
Ba ví dụ chọn theo việc (tình huống giả định)
| Việc cần làm | Lựa chọn hợp | Vì sao |
|---|---|---|
| Thêm một biểu mẫu đăng ký vào website có sẵn, xong trong hai tuần | Lập trình viên tự do | Việc nhỏ, rõ, không cần bảo hành dài |
| Phần mềm quản lý đơn hàng cho công ty 40 người, dùng nhiều năm | Đội nhỏ hoặc công ty có quy trình bàn giao | Cần kiểm thử, tài liệu, bảo hành |
| Hệ thống nhiều phân hệ cho tập đoàn, nhiều đội làm song song, có đấu thầu | Công ty lớn | Cần nhiều người, thủ tục pháp lý đầy đủ |
Cùng một doanh nghiệp có thể dùng cả ba ở các thời điểm khác nhau. Điều không nên là giao hệ thống cốt lõi cho một người tự do chỉ vì giá thấp, rồi phát hiện ra sau một năm không ai khác đọc được mã.

Nhìn từ phía người làm tự do
Người làm tự do giỏi thường tự biết giới hạn của mình và từ chối việc quá lớn. Bài freelance developer: định giá đúng và tránh bẫy trên blog Trần Công Thắng viết cho lập trình viên, nhưng đọc từ phía người thuê sẽ thấy vì sao một báo giá tự do quá thấp thường đi kèm phạm vi mơ hồ.
Kết hợp nhiều loại nhà cung cấp
Nhiều doanh nghiệp không chọn một loại duy nhất. Một cách kết hợp phổ biến: thuê một công ty làm bản đầu của hệ thống cốt lõi, có kiểm thử, tài liệu và bàn giao đầy đủ; sau đó dùng lập trình viên tự do hoặc một kỹ sư nội bộ cho các sửa đổi nhỏ hằng tháng, dựa trên mã nguồn và tài liệu đã nhận. Cách này chỉ chạy được khi bản đầu được bàn giao sạch: mã trên kho của doanh nghiệp, hướng dẫn dựng lại, danh sách tài khoản. Nếu bản đầu không có những thứ đó, người đến sau sẽ mất nhiều tuần chỉ để hiểu hệ thống, và chi phí tiết kiệm được ở giai đoạn sau biến mất.
Câu hỏi thường gặp
Thuê lập trình viên tự do có rẻ hơn thuê công ty không?
Thường rẻ hơn tính theo giờ, vì không gồm quản lý dự án, kiểm thử và bảo hành. So đúng phải cộng những phần đó vào phía người tự do.
Thuê lập trình viên tự do ở đâu an toàn?
Nền tảng có giữ tiền trung gian và đánh giá công khai giảm rủi ro thanh toán. Rủi ro kỹ thuật vẫn cần giảm bằng mã nguồn trên kho của bạn và nghiệm thu theo kịch bản.
Đội nhỏ có đủ năng lực làm phần mềm doanh nghiệp không?
Có nếu đội đủ vai trò và đã làm loại việc đó. Kiểm bằng hệ thống đang chạy và quy trình soát mã, không bằng số nhân viên.
Có nên thuê nhiều freelancer thay vì một công ty?
Chỉ khi phía doanh nghiệp có người điều phối kỹ thuật. Không có người ghép các phần lại, rủi ro tích hợp rơi hoàn toàn về phía bạn.
ALODEV có cho thuê lập trình viên theo giờ không?
Không. ALODEV chỉ nhận trọn gói theo dự án, phạm vi và giá chốt trước khi làm (trang Mô hình hợp tác).


