Liệu việc có được những lập trình viên giỏi nhất có thực sự quan trọng?

Bài viết được dịch từ blog Coding Horror

Joel gần đây có viết một bài khá dài và trong bài viết đó thì anh ta đã đặt câu hỏi rằng, liệu việc có được “những lập trình viên giỏi nhất” thì có thực sự quan trọng hay không?

Đây là một cái gì đó mà tôi đã đề cập trước đây: có một sự chênh lệch kỹ năng vô cùng lớn và rất kỳ cục trong nghề phát triển phần mềm. Tỷ lệ mà bạn sẽ làm việc cùng với một thiên tài hoặc là một thằng ngốc khi nhận bất kỳ công việc nào là 50/50.

Liệu việc sở hữu những lập trình viên giỏi nhất có là điều quan trọng?Liệu việc sở hữu những lập trình viên giỏi nhất có là điều quan trọng?


Điều tồi tệ hơn đó là không hề có một mối tương quan nào giữa kinh nghiệm và kỹ năng cả. Tôi đã từng làm việc với những thực tập sinh có tài năng đáng kinh ngạc và những tay lập trình viên kỳ cựu với 20 năm kinh nghiệm thì lại tạo ra những phần code rất tệ hại. Joel cũng cung cấp thêm dữ liệu để hỗ trợ cho giả thuyết này:

Dữ liệu mà tôi dựa trên đến từ giáo sư Stanley Eisenstat thuộc đại học Yale. Mỗi năm ông dạy một khóa học lập trình chuyên sâu có tên là CS 323, nơi mà một phần lớn công việc bao gồm khoảng 10 đồ án lập trình. Những đồ án này rất quan trọng đối với các sinh viên như: thực thi một Unix command-line shell, thực thi một bộ nén file ZLW, v.v…

Không có nhiều lời kêu ca từ những sinh viên về khối lượng công việc đã được yêu cầu cho lớp học này, cho đến khi giáo sư Eisenstat bắt đầu hỏi các sinh viên phải báo cáo lại số lượng thời gian mà họ đã dành cho mỗi đồ án. Ông đã tập hợp được dữ liệu này một cách cẩn thận trong một số năm.

Tôi đã dành một số thời gian để nghiên cứu dữ liệu này; nó là những tập dữ liệu duy nhất về kết quả của hàng tá sinh viên làm việc trên những đồ án giống hệt nhau và sử dụng cùng công nghệ tại cùng một thời điểm. Kết quả đó có thể kiểm soát và nghiên cứu được.

Đây là một ví dụ mô tả cho một đồ án riêng lẻ CS 323, biểu đồ hiển thị thời gian dành cho đồ án và kết quả (điểm số) đạt được:

Kết quả tỉ lệ giữa thời gian và điểm số lập trìnhHoàn toàn không có một mối tương quan nào giữa thời gian dành để giải quyết vấn đề và điểm số kết quả thu được đối với mỗi sinh viên của khóa học Khoa học Máy tính kể trên. Kết quả này không phải là đủ nhiều để có thể mở rộng kết luận ra cho toàn ngành phát triển phần mềm nói chung.

Phần còn lại trong bài viết của Joel là một sự thay đổi đến mức gần như là một hình thức “tự sướng”– hãy nhìn vào công ty tuyệt vời của tôi và những nhân viên thông minh mà tôi đã tuyển dụng được! Nhưng ít ra thì cuối cùng anh ta cũng phải thừa nhận một thực tế rằng, anh ta đang nói về một lĩnh vực ngách rất hẹp:

Đó không chỉ là vấn đề lập trình viên giỏi có “năng suất cao gấp 10 lần” lập trình viên trung bình. Mà đó là lập trình viên có “năng suất trung bình” sẽ chẳng bao giờ vươn tới một trình độ để có thể tạo ra được sản phẩm phần mềm tuyệt vời cả.

Buồn thay, kết quả này không thực sự đúng với môi trường phát triển phần mềm không có sản phẩm. Về mặt chủ quan, để xây dựng những phần mềm phục vụ nội bộ thì hiếm khi người ta đi thuê những siêu sao về để tạo ra nó. Không ai lại đi thuê ca sĩ ngôi sao Dolly Parton để hát dạo tại mấy đám cưới ở làng cả. Đó là lý do tại sao phần lớn nghề nghiệp chỉ làm bạn thỏa mãn khi bạn là một nhà phát triển phần mềm tại một công ty phần mềm thực thụ, chứ không phải là làm IT cho một ngân hàng nào đó.

Kể từ khi khái niệm phát triển phần mềm thương mại của Joel co lại chỉ là một tỷ lệ rất nhỏ của thị trường IT nói chung, điều này có nghĩa rằng liệu việc sở hữu những lập trình viên giỏi nhất thì không quan trọng lắm trong hầu hết các trường hợp?

Buồn thay, tôi tin rằng câu trả lời cho câu hỏi trên là… ừ đúng vậy.

Các bài viết liên quan:

Về tác giả bài viết:

Jeff_atwood_coding_horrorJeff Atwood là một chuyên gia công nghệ tại Mỹ, hiện đang sinh sống và làm việc tại Berkeley, CA. Anh là một kỹ sư phần mềm chuyên về công nghệ Microsoft .NET, và là một blogger nổi tiếng trong cộng đồng công nghệ với blog Coding Horror, anh là người sáng lập và kiêm Giám đốc điều hành (CEO) của trang web hỏi đáp uy tín Stack Overflow và cũng là đồng sáng lập của Stack ExchangeDiscourse.

Advertisements

2 comments on “Liệu việc có được những lập trình viên giỏi nhất có thực sự quan trọng?

Trả lời

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s