Vì bạn muốn trở thành một nhà phát triển game

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

Tôi thường nói rằng phát triển game là dạng phát triển phần mềm khó nhất. Nó có xu hướng lập trình ở cấp độ rất thấp, trên những nền tảng phần cứng khác thường, và bạn phải liên tục tối ưu hóa hiệu suất và “niềm vui” — hay bất cứ điều gì mà bạn có thể. Hãy xem xét sự phức tạp của một khía cạnh nhỏ trong phát triển game, AI (trí tuệ nhân tạo): làm thế nào để bạn mô phỏng các đối thủ một cách hiệu quả? Nếu đem so sánh với việc phát triển game thì các ứng dụng doanh nghiệp nhỏ của tôi đang làm cũng giống như chỉ là cuộc đi dạo trong công viên vậy.

Bạn muốn trở thành một lập trình viên trong ngành công nghiệp game?Bạn muốn trở thành một lập trình viên trong ngành công nghiệp game?


Tất nhiên, ưu điểm của nó là bạn đang viết một trò game, một cái gì đó dành cho giải trí đơn thuần. Về mặt lý thuyết thì làm công việc này sẽ thú vị hơn rất nhiều so với việc ngồi tạo ra các ứng dụng tương tác với cơ sở dữ liệu CRUD (thêm, xóa, sửa). Vâng, theo một bài blog xuất bản gần đây, thì thực tế không hẳn là như vậy:

Trong nhiều tuần, quá trình sản xuất game đã tăng tốc vào một cuộc khủng hoảng ‘nhẹ’: một tuần làm 6 ngày, mỗi ngày 8 tiếng. Không tệ. Vẫn còn vài tháng cho đến khi có bất kỳ cuộc khủng hoảng thực sự nào bắt đầu xảy ra, và nhóm đã được cho biết rằng quá trình “tiền khủng hoảng” này là để ngăn chặn một cuộc khủng hoảng lớn xảy ra ở giai đoạn cuối; vào thời điểm này bất cứ nhu cầu nào khác cho một cuộc khủng hoảng dường như khó xảy ra, khi dự án có vẻ vẫn đúng tiến độ. Tôi không biết có bao nhiêu lập trình viên đã chấp nhận lời giải thích của hãng game EA để làm thêm giờ; chúng tôi là những người mới và ngây thơ mới làm điều đó. Các nhà sản xuất thậm chí đã thiết lập một thời hạn deadline; họ đã đưa ra một ngày cụ thể để kết thúc cuộc khủng hoảng này, và vẫn còn vài tháng nữa kể từ nay cho đến lúc game ra lò, do đó mọi thứ trông có vẻ an toàn. Cái ngày đó đến và trôi qua. Và trôi qua, trôi qua nữa. Và các nhân viên nhận được thông báo mới không phải là hoãn lại việc ra lò; mà mọi người sẽ phải trải qua một giai đoạn tăng tốc khác: làm việc 12 giờ mỗi ngày, 6 ngày mỗi tuần, từ 9h sáng đến 10h tối.

Nhiều tuần lễ trôi qua. Một lần nữa các nhà sản xuất lại đưa ra một thời hạn kết thúc của cuộc khủng hoảng này, và một lần nữa họ lại thất bại. Trong suốt giai đoạn này, dự án vẫn đúng tiến độ. Thời gian làm việc dài đã ảnh hưởng đến nhiều thành viên trong nhóm; mọi người bắt đầu cảm thấy dễ bị cáu kỉnh và một số người bắt đầu bị ốm (bệnh). Người ta lũ lượt xin nghỉ phép một vài ngày trong thời gian này, nhưng sau đó cả nhóm phát triển dường như lấy lại được trạng thái cân bằng và họ lại tiếp tục cày cuốc. Các nhà quản lý thậm chí ngừng nói về một thời điểm khi giờ làm việc sẽ trở lại bình thường.

Bây giờ, có vẻ như, cuộc khủng hoảng “thực sự” đã xảy ra, một trong những nhà sản xuất của game này đã khôn ngoan chuẩn bị cho nhóm phát triển của họ bằng cách đẩy họ vào giới hạn tối đa. Thời gian làm việc bắt buộc hiện tại là 9h sáng đến 10h tối — 7 ngày một tuần — với việc thỉnh thoảng tối thứ Bảy được nghỉ sớm (lúc 18h:30). Tính trung bình một tuần làm việc tới 85 giờ. Những lời phàn nàn do phải làm thêm giờ ngày càng nhiều, kết hợp với sự mệt mỏi của nhóm phát triển đã dẫn đến việc họ phạm phải rất nhiều sai lầm và một số lượng lớn năng lượng lãng phí đã bị bỏ qua.

Tình trạng stress bắt đầu hiện diện khắp nơi. Sau một thời gian dài làm việc thì các đôi mắt bắt đầu mất tập trung; sau một thời gian làm việc mà mỗi tuần chỉ có một ngày nghỉ thì sự mệt mỏi bắt đầu tích luỹ và tăng trưởng theo cấp số nhân. Có một lý do tại sao lại có 2 ngày nghỉ cuối tuần — những điều tồi tệ sẽ xảy ra với sức khỏe thể chất, cảm xúc và tinh thần của một người nếu những ngày này bị cắt ngắn. Nhóm phát triển ngày càng phạm phải nhiều sai sót mà đáng ra phải được loại bỏ.

Thật khó để tin rằng đây là tiêu chuẩn thực tế trong ngành công nghiệp phát triển game, nhưng nó có vẻ đúng dựa trên các ý kiến bình luận phía dưới bài viết đó:

Mọi cuốn sách tôi đã đọc đều nói rằng quy trình làm việc thiển cận kiểu này sẽ làm hỏng dự án của bạn, và cuối cùng là cả công ty của bạn– cùng với cuộc sống của các nhân viên của bạ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

2 comments on “Vì bạn muốn trở thành một nhà phát triển game

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