Những sai lầm thường gặp về outsourcing
Software Engineering
36
White

Ngoc Dao viết ngày 25/03/2016

Trong quyển sách Beyond Java, xuất bản vài năm trước có đoạn:

Java has characteristics that many of us take for granted. You can find good Java developers everywhere. No one ever gets fired for choosing Java. It's mature and ready for outsourcing.

Tại sao lại nói Java là "ready for outsourcing"? Ý nghĩa sâu xa của câu này là gì? Chúng ta thử tìm hiểu xem sao.

Lời giới thiệu của Joel Spolsky

Năm 2001, tôi viết:

"Trong thời hội chứng dotcom, có một số tác giả lang băm cho rằng công ty trong tương lai sẽ hoàn toàn ảo - như kiểu một cặp thời thượng ngồi nhấm nháp rượu Chardonnay trong phòng khách và outsource mọi thứ. Những nhà "tiên tri" đó bỏ qua mất một điều, đó là cái mà thị trường mua là giá trị gia tăng. Hai trí thức sành điệu ngồi trong phòng khách, mua hệ thống e-commerce của công ty A, bán hàng của công ty B sản xuất, nhà kho và vận chuyển do công ty C đảm nhiệm với dịch vụ chăm sóc khách hàng của công ty D, thực tế chằng thêm được giá trị gia tăng mấy. Thực ra, nếu bạn đã từng phải outsource một bộ phận kinh doanh nào đó, bạn sẽ nhận thấy outsource phiền hà thế nào. Nếu không quản lý trực tiếp được dịch vụ chăm sóc khách hàng, dịch vụ của bạn sẽ tồi tệ kinh hoàng, như người ta hay viết trên blog về những lúc phải nhờ nhân viên của công ty điện thoại nào đó làm một việc gì cho dù rất đơn giản. Nếu bạn outsource quá trình thực thi, và đối tác của bạn lại có cách suy nghĩ hoàn toàn khác về chuyện làm thế nào để chuyển hàng nhanh hơn, khách hàng của bạn sẽ không hài lòng, và bạn sẽ chằng thể làm gì được cả, bởi vì bạn phải mất tới 3 tháng mới lại tìm được đối tác khác, mà thực tế, bạn sẽ chẳng bao giờ biết được khách hàng có vừa ý không, vì họ không có cách nào phản ánh tới bạn cả, vì bạn đã "xuất khẩu" trung tâm chăm sóc khách hàng với mục đích không nghe thấy phản hồi của khách hàng của bạn. Còn cái hệ thống e-commerce mà bạn mua á? Làm sao nó có thể linh hoạt như obido của Amazon, cái mà họ tự tay viết? (Và nếu như nó hay như obido thì Amazon chẳng thể nào thắng nổi các đối thủ đã mua cái hệ thống e-commerce tương tự). Và sẽ chẳng có cái server sẵn có nào có thể nhanh như server được tự tay tối ưu hóa của Google."

Bài viết của Bean là dễ hiểu và ít tính bè phái tôi từng đọc. Thật thú vị khi đọc 1 bài giải thích sáng sủa mà thật sự đúng trọng tâm thảo luận, đặc biệt là vào năm có quá nhiều bài viết ngớ ngẩn về chủ đề này.

--- oOo ---

Quần áo và đồ chơi được sản xuất ở nước ngoài. Vậy tại sao không làm phần mềm ở ngoài nước luôn, nơi có giá lao động rẻ hơn?

Những năm gần đây, nhiều công ty công nghệ của Mỹ đã chuyển việc phát triển phần mềm sang Ấn Độ. Trong năm 2004, Hewlett-Packard trở thành công ty IT đa quốc gia lớn nhất ở Ấn Độ, với hơn 10 ngàn nhân viên.

Sự nhiệt tình với việc outsourcing ra ngoài nước Mỹ giống hệt sự nhiệt tình của những công ty Internet trong thập niên 90. Ravi Chiruvolu, một đối tác tại quỹ đầu tư mạo hiểm Charter viết: "Những nhà đầu tư mạo hiểm đã quyết định điều đó, bởi lập trình viên giỏi và rẻ tại những nước như Ấn Độ có hiệu quả kinh tế cao hơn khi outsourcing. Nếu Nike có thể sản xuất giày ở nước ngoài, chúng ta cũng có thể làm như vậy với các đoạn code." Theo logic đó, Oracle đã quyết định tăng gấp đôi số lập trình viên thuê tại Ấn Độ lên thành 6 ngàn.

Rất nhiều bài viết về outsourcing khẳng định các công ty outsource có ý định chuyển việc ra ngoài lâu dài. Dù kết quả của xu hướng outsourcing là công việc bị ồ ạt chuyển ra ngoài nước Mỹ, không có nghĩa Mỹ mất việc. Chúng ta sống trong nền kinh tế toàn cầu. Người Ấn Độ xứng đáng được nhận việc như những người ở Mỹ hay bất kì nước nào khác, và điều đáng lo ngại là nhiều công ty bị chỉ trích chỉ vì họ đã thuê người tại nước ngoài.

Mặc dù outsourcing không phải là vô đạo đức, việc tách việc quá trình phát triển phần mềm hẳn khỏi những công đoạn khác là sai lầm nghiêm trọng về chiến lược. Outsourcing thất bại khi nhầm lẫn giữa "hiệu quả thực thi" và "chiến lược". Hiệu quả thực thi là nói về chuyện công việc được thực hiện rẻ hơn và nhanh hơn. Chiến lược là nói về chuyện tạo ra lợi thế cạnh tranh dài hạn, mà đối với công ty phần mềm thì đó là khả năng tạo ra sản phẩm mới lạ đột phá.

Outsource thành công khi sản phẩm không mang tính đột phá. Ví dụ nên outsource những thứ đã quá quen thuộc như thiết kế website, phần mềm tính tiền lương... vì việc này tăng hiệu quả thực thi.

Sản phẩm đột phá thì khác, không thể sản xuất hàng loạt như kiểu sản xuất dây chuyền. Nó đòi hỏi những người có kĩ năng thiết kế và phát triển cao, rất khó kiếm. Bom nguyên tử cần đạt khối lượng tới hạn mới nổ được. Khi outsource, thì công ty mất đi khối lượng và lợi thế cạnh tranh để có thể tạo ra sản phẩm đột phá.

Điều này không có nghĩa lập trình viên Ấn Độ kém kĩ năng hay kém sáng tạo. Outsource gây tổn hại cho canh tân vì nhân viên công ty khó trao đổi thường xuyên và thoải mái vì khác biệt giờ giấc, văn hóa. Không thể trao đổi thường xuyên khi cách nhau đến 9 múi giờ (Ấn Độ cách Mỹ 9 múi giời, khi người ở Ấn Độ gửi mail thì người ở Mỹ đang ngủ không check được ngay. Bình thường việc gửi và trả lời vài email mất 20 phút, thì phải mất vài tuần nếu cách nhau 9 múi giờ). Không thể có đột phá nếu chủ công ty ít không thường xuyên nói chuyện trực tiếp với những nhân viên có trách nhiệm khám phá và suy nghĩ ý tưởng mới. Cho dù công ty của bạn có trụ sở chính ở đâu và outsource đến nơi nào, không thể đột phá nếu outsource mất đội ngũ nhân viên nòng cốt.

Công ty muốn sáng tạo ra sản phẩm đột phá, cần giữ những lập trình viên sáng láng nhất ở trụ sở chính. Nếu toàn bộ trụ sở đặt ở Ấn Độ, thì về dài hạn hoàn toàn có thể làm ra những sản phẩm đột phá, không thua kém công ty Mỹ hay ở nơi nào khác. Như vậy, chiến lược chỉ xấu khi công ty ở Mỹ mà lại outsource toàn bộ việc phát triển sang nước khác.

Nhầm lẫn giữa hộp bánh và bánh bên trong

Tôi sống gần North Beach, San Francisco. North Beach nổi tiếng về nhà hàng Ý, về sinh hoạt ban đêm, và về những cửa hàng nhỏ chỉ chuyên bán một sản phẩm gì đó. Gần đây, tôi mua sôcôla ở XOX Truffles, một trong những cửa hàng loại trên. Sôcôla này ngon tuyệt, do chủ cửa hàng Jean-Marc Gorce làm bằng tay. Cửa hàng này được xếp vào top 10 ở Mỹ.

Jean-Marc gần đây bán sôcôla đựng trong hộp màu vàng-xanh. Tôi thích design mới này. Khi hỏi, ông bảo đây là do vợ ông thiết kế và đặt công ty ở Philipin làm với giá rất rẻ.

Hộp bánh vàng-xanh của Jean-Marc là ví dụ thành công về outsouce. Jean-Marc bán sôcôla chứ không bán vỏ hộp. Design và sôcôla mới là cốt lõi. Jean-Marc có thể outsource việc làm vỏ hộp, tăng hiệu quả thực thi mà không mất đi danh tiếng.

Jean-Marc outsource việc làm vỏ hộp, nhưng không bao giờ tính chuyện outsource việc làm sôcôla bởi vì ông sẽ mất lợi thế. Thế mà, vì quá quan tâm đến giảm chi phí, nhiều công ty phần mềm Mỹ lại outsource đi những công nghệ nền tảng và yếu tố tạo sự khác biệt.

Design và sản xuất là khác nhau

Đây không phải lần đầu, các công ty cố gắng biến việc phát triển phần mềm thành hàng hóa. Trong những năm 80, các công ty Nhật Bản đã không thành công khi thử xây dựng các xí nghiệp phần mềm để sản xuất chương trình. Họ nhận ra rằng đúng là sử dụng cùng lúc các lập trình viên không tạo ra phần mềm mới.

Nhưng, như đã nói ngay từ đầu, không phải tất cả outsourcing đều tồi. Và trong một vài ngành công nghiệp, outsourcing có thể là yếu tố cần thiết cho khả năng cạnh tranh. Ví dụ như, thật thông minh khi outsource quần áo hay đồ chơi. Hầu hết chi phí cho việc sản xuất quần áo và đồ chơi là ở bộ phận chế tạo, không phải ở thiết kế. Những sản phẩm đó có thể vẫn được thiết kế tại công ty nhưng sản xuất ở một nơi khác cho "rẻ".

Nhưng viết phần mềm thì căn bản khó khăn ở phác thảo. Gần như tất cả giá trị của việc tạo nên một phần mềm ở viết chương trình, không phải ở sản xuất. Giai đoạn sản xuất phần mềm chỉ là copy chương trình cuối cùng vào đĩa và "đóng thùng" cùng với sách hướng dẫn.

Michael Porter, trường kinh tế Harvard, chuyên gia về quản lý và thúc đẩy cạnh tranh, tổng kết thú vị về rắc rối của cạnh tranh đơn độc trong hiệu quả hoạt động:

"Nếu tất cả các bạn cố gắng làm việc cũng giống như đối thủ cạnh tranh của mình, thì không chắc rằng bạn sẽ thành công. Thật là sự kiêu căng đáng kinh ngạc cho công ty nào tin rằng có thể thực hiện những phần giống nhau của sản phẩm mà đối thủ cạnh tranh làm, thậm chí tốt hơn rất nhiều. Điều đó đặc biệt đúng hiện nay, khi mà lưu lượng thông tin và vốn được luân chuyển nhanh một cách đáng kinh ngạc. Điều đó đặc biệt nguy hiểm khi đánh cuộc trên sự kém cỏi của đối thủ - và bạn sẽ làm gì khi mà bạn đang ganh đua về hiệu quả hoạt động."

Sự thích thú kì cục về outsourcing phần mềm là không tốt cho các công ty không phải vì việc sa thải lập trình viên ngắn hạn, nhưng bởi vì các công ty công nghệ sẽ mất khả năng đưa vào những cái mới. Công ty phần mềm outsource chương trình cao cấp sẽ thất bại trong đổi mới nhanh như đối thủ của họ. Rốt cục thì, những đối thủ cạnh tranh nào có những nhóm phát triển tốt và có thể đổi mới nhanh hơn sẽ thay thế những công ty này.

Nguồn: The Best Software Writing I

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Ngoc Dao

102 bài viết.
252 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
56 6
Làm thế nào để nâng cấp trang web mà không làm gián đoạn dịch vụ? Đây là câu hỏi phỏng vấn các công ty lớn thường hỏi khi bạn xin vào vị trí làm lậ...
Ngoc Dao viết gần 2 năm trước
56 6
White
32 0
Bài viết này giải thích sự khác khác nhau giữa hai ngành khoa học máy tính (computer science) và kĩ thuật phần mềm (software engineering), hi vọng ...
Ngoc Dao viết gần 2 năm trước
32 0
White
28 1
Nếu là team leader, giám đốc công ty hay tướng chỉ huy quân đội, vấn đề cơ bản bạn gặp phải là “hướng mọi người đi theo con đường bạn chỉ ra”. Thử...
Ngoc Dao viết gần 2 năm trước
28 1
Bài viết liên quan
White
1 1
Lập trình đôi (pair programming) là hình thức lập trình trong đó 2 người cùng hợp tác làm việc trên cùng màn hình (có thể khác bàn phím v.v.). Bài ...
Ngoc Dao viết gần 2 năm trước
1 1
White
3 0
Lập trình viên quá cố người Mỹ Phil Karlton có câu nổi tiếng: There are only two hard things in Computer Science: cache invalidation and naming th...
Ngoc Dao viết gần 2 năm trước
3 0
White
8 0
Bản quyền thuộc Fsoft Potato Tech Mag Đón đọc những bài viết đặc sắc ở blog https://giaosucan.blogspot.com Khi tham gia một dự án, chắc chắn ai c...
Giaosucan viết 12 tháng trước
8 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
102 bài viết.
252 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!