Lầm tưởng về số năm kinh nghiệm trong nghề lập trình

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

Gần đây tôi có nhận được một email từ Andrew Stuart của công ty tuyển dụng Flat Rate ở Úc. Andrew đã thuật lại quy trình phỏng vấn kỹ thuật qua điện thoại của họ, các bước của họ dường như tương đối giống với nội dung tôi đã phác thảo trong bài viết Phỏng Vấn Lập Trình Viên Qua Điện Thoại Đúng Cách. Tôi rất vui khi nghe thấy rằng cách đó hiệu quả. Thực ra, một buổi phỏng vấn qua điện thoại đúng cách là rất quan trọng. Tôi hoàn toàn đồng ý với Andrew là: bạn nên chắc chắn đến 95% về một ứng viên nào đó sẽ là một nhân viên tuyệt vời trước khi họ bước chân vào một phòng phỏng vấn. Bất cứ thứ gì ít hơn đều là một sự lãng phí thời gian rất lớn của mọi người.

Liệu chúng ta có nên yêu cầu số năm kinh nghiệm của ứng viên không nhỉ?Liệu chúng ta có nên yêu cầu số năm kinh nghiệm của ứng viên không nhỉ?


Nhưng có một khía cạnh của quy trình tuyển dụng đó thường dẫn đến thất bại, cho dù họ đã có một cuộc phỏng vấn qua điện thoại rất tốt. Andrew đã dẫn chứng bằng một câu chuyện xuất sắc trong email của anh, và nội dung của nó giải thích việc này tốt hơn là tôi có thể:

Tôi có một khách hàng đang xây dựng một ứng dụng bảo mật cao cấp. Tôi đã gửi cho họ lần lượt hết người này đến người khác nhưng họ đều không chấp nhận. Lý do thì hầu hết luôn là bởi vì ứng viên đó “không có đủ kinh nghiệm coding ở mức thấp”. Ứng viên mà tôi gửi đến đã có kinh nghiệm làm những thứ kiểu như thiết kế và phát triển các hệ điều hành, các trình quản lý bộ nhớ cao cấp và những ứng dụng có độ phức tạp rất cao khác. Nhưng khách hàng của tôi vẫn không cảm thấy vừa ý. Họ yêu cầu ứng viên phải có kinh nghiệm thực tế trong việc coding ở mức thấp trong một lĩnh vực đặc thù. Cuối cùng tôi nhận được một đơn xin từ một kỹ sư phần mềm rất sáng chói, người mà hầu như đã dùng một tay để viết ra một bộ mô phỏng máy vi tính cổ điển, nhưng lại không có hoặc có rất ít kinh nghiệm trong lĩnh vực cụ thể mà họ yêu cầu.

Tôi đã nói với khách hàng đó rằng, “Tôi có một gã rất tuyệt ở đây, người này chưa có kinh nghiệm làm việc coding ở mức thấp, nhưng tôi nghĩ rằng anh nên thuê cậu ta.” Họ đã vô cùng hoài nghi. Tôi đã rất nỗ lực để có thể thu xếp một cuộc phỏng vấn. “Nhìn xem, cậu ta là một kỹ sư phần mềm tuyệt vời, mặc dù chưa có kinh nghiệm coding ở mức thấp trong lĩnh vực đặc thù như yêu cầu của anh vào lúc này, nhưng nếu anh thuê cậu ta, thì chỉ trong 3 đến 6 tháng tới anh sẽ có một kỹ sư phần mềm tuyệt vời có kinh nghiệm coding ở mức thấp mà anh đang tìm kiếm.”

Họ đã phỏng vấn cậu ta và đưa cho cậu ta công việc đó. Chỉ trong một ít tuần thì đã cho thấy rõ ràng cậu ta là lập trình viên thông minh nhất ở trong công ty đó. Cậu ta nhanh chóng thành thạo kiểu coding mức thấp của họ và khả năng học của cậu ta cao hơn rất nhiều so với những coder khác trong công ty. Mỗi lần mà tôi nói chuyện với khách hàng đó thì anh ta cứ nói say sưa về nhân viên này, người mà bây giờ đã trở thành một nhân viên nòng cốt của công ty. Công ty đó giờ đây không còn tập trung tuyển dụng vào những ứng viên mà có kinh nghiệm phù hợp chính xác với yêu cầu công nghệ nữa. Thay vì đó, họ tập trung vào việc tìm kiếm và tuyển dụng những kỹ sư thông minh và có đam mê nhất.

Một điều khá nguy hại là lầm tưởng về số năm kinh nghiệm làm việc đã tràn ngập toàn bộ ngành công nghiệp phần mềm. Hãy hình dung có bao nhiêu kỹ sư phần mềm sáng chói mà các công ty đã bỏ lỡ chỉ bởi vì họ hoàn toàn ám ảnh để đi tìm những người có kỹ năng phù hợp — chính xác đến từng chữ — với một danh sách các kỹ năng cứng nhắc.

Không biết tại sao, họ quên mất rằng cái mà các nhà phát triển phần mềm làm tốt nhất là học. Các nhà tuyển dụng nên tìm kiếm những người có đam mê, nghị lực, tự học một cách linh hoạt, những người mà chứng tỏ khả năng có thể code trong bất cứ ngôn ngữ lập trình nào — và đưa cho họ những dự án thú vị để họ có thể gắn với nó.

Có nhiều bằng chứng hết lần này đến lần khác rằng không có mối tương quan giữa số năm kinh nghiệm và kỹ năng trong lập trình. Sau khoảng 6 đến 12 tháng làm việc trong một công nghệ đặc thù, bạn hoặc là có nó hoặc là không. Không quan trọng việc có bao nhiêu năm “kinh nghiệm” mà một lập trình viên sở hữu, thậm chí có một tỉ lệ cược rằng một số người không hề có ý tưởng gì về cái mà họ đang làm. Đây là lý do tại sao các lập trình viên trong nghề nhanh chóng học cách để quan sát những đồng nghiệp của họ với một mức độ hoài nghi. Có lẽ đó chỉ là câu trả lời hợp lý khi việc không có mối liên hệ giữa kinh nghiệm và kỹ năng đã lan tràn khắp trong lĩnh vực kỹ nghệ phần mềm.

Nếu bạn chấp nhận quan điểm này, thì bạn có thực sự muốn làm việc cho một công ty mà vẫn khăng khăng theo đuổi lầm tưởng về số năm kinh nghiệm trong quy trình tuyển dụng của họ? Có lẽ là không.

Điều này đã dẫn tôi đến một quan điểm rằng: Việc yêu cầu X năm kinh nghiệm trên nền tảng Y trong tin tuyển dụng công việc của bạn thì, vâng, là một sự ngu dốt. Miễn là các ứng viên có 6 tháng đến một năm kinh nghiệm thì đều xem là có thể đem ra so sánh được. Nên tập trung vào những thứ khác mà sẽ tạo ra nhiều sự khác biệt. Nền tảng kinh nghiệm thì đơn thuần chỉ là một yếu tố cơ bản, không phải là một cái gì tạo ra sự khác biệt thực sự quan trọng.

Nó có nghĩa rằng nếu bạn là một ứng viên thì có thể sử dụng những tiêu chí kiểu như “3-5 năm làm việc với công nghệ nào đó” là một thước đo để biết công ty đó đang tuyển dụng về cái gì. Những yêu cầu cao hơn của họ cho số năm phục vụ trong một công nghệ xác định, thì giống như là họ đang tìm kiếm tất cả những thứ sai lầm trong các ứng viên của họ vậy, và vì vậy có thể phần còn lại của team sẽ bị chọn lựa một cách mù quáng bởi những lý do sai lầm.

Tôi không nói rằng kinh nghiệm là không quan trọng trong lĩnh vực phát triển phần mềm. Nó quan trọng. Nhưng bạn hãy quan tâm đến toàn bộ dải kinh nghiệm của một lập trình viên, và nhận ra rằng thời gian đầu tư không tự động ngang bằng với kỹ năng. Nói cách khác, bạn có thể từ chối những kỹ sư phần mềm tuyệt vời chỉ đơn giản bởi vì họ thiếu hụt “(n) năm kinh nghiệm” trong lĩnh vực công nghệ ngách hẹp của bạn– và đó thực sự là một điều chết tiệt đáng hổ thẹn.

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

10 comments on “Lầm tưởng về số năm kinh nghiệm trong nghề lập trình

  1. Bài viết quá hay, mong rằng một số nhà tuyển dụng có thể đọc được những bài viết thế này để khỏi bỏ lỡ những sinh viên tuyệt vời mới ra trường ^^

  2. Mình đã thấy rất nhiều trường hợp những người có kinh nghiệm, họ luôn có một lối tư duy theo lối mòn. Và thường dễ mắc những lỗi về convention khi làm tại nơi làm việc mới. Và họ thường xuyên kêu ca, so sánh công việc họ đang làm với công việc cũ.

  3. Mình rất may mắn khi là một sinh viên vừa mới ra trường và hoàn toàn chưa có kinh nghiệm gì cả nhưng vẫn xin được việc. Khi phỏng vấn thì cty chỉ yêu cầu 02 yếu tố cơ bản nhất: ngoại ngữ và nền tảng kiến thức.

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