Các Joel thử nghiệm là một thử nghiệm nổi tiếng để xác định như thế nào tốt đội ngũ của bạn. Bạn nghĩ gì về các điểm? Bạn có không đồng ý với bất kỳ trong số họ? Có bất cứ điều gì mà bạn sẽ thêm?
Các Joel thử nghiệm là một thử nghiệm nổi tiếng để xác định như thế nào tốt đội ngũ của bạn. Bạn nghĩ gì về các điểm? Bạn có không đồng ý với bất kỳ trong số họ? Có bất cứ điều gì mà bạn sẽ thêm?
Câu trả lời:
Jeff Atwood có Dự luật về Quyền của Lập trình viên .
Từ bài viết:
- Mỗi lập trình viên phải có hai màn hình
- Mỗi lập trình viên sẽ có một PC nhanh
- Mỗi lập trình viên sẽ có lựa chọn chuột và bàn phím
- Mỗi lập trình viên sẽ có một chiếc ghế thoải mái
- Mỗi lập trình viên phải có kết nối internet nhanh
- Mỗi lập trình viên phải có điều kiện làm việc yên tĩnh
Dường như có một số mặt hàng mà tôi muốn thấy trong danh sách của Joel. Cụ thể trong lĩnh vực phần cứng (màn hình kép, PC nhanh, chuột / bàn phím, ghế thoải mái, kết nối nhanh).
Điều duy nhất không được đề cập là có một bàn làm việc thoải mái và có thể điều chỉnh .
Tất cả điều này có thể được thêm vào bằng cách thay đổi:
Số 9 hiện tại: Bạn có sử dụng công cụ tốt nhất mà tiền có thể mua không?
đến
Cải thiện # 9: Bạn có sử dụng các công cụ và tiền thiết bị tốt nhất có thể mua không?
Thật thú vị khi điểm 8 bây giờ đọc:
8. Do programmers have quiet working conditions?
khi nó được sử dụng để đọc (một cái gì đó như)
8. Do programmers have their own office?
và đoạn cuối vẫn bắt đầu:
Bây giờ chúng ta hãy di chuyển chúng vào các văn phòng riêng biệt với tường và cửa ra vào.
Tôi luôn nghi ngờ về thử nghiệm này vì ở tất cả những nơi tôi từng làm việc - cả với tư cách là nhân viên và khách truy cập - những người duy nhất có văn phòng riêng của họ là giám đốc và quản lý cấp cao.
Viết phần mềm trong thế giới thực thường là hoạt động nhóm, bạn cần nói chuyện với các đồng đội của mình để nảy ý tưởng xung quanh, v.v. và điều đó khó thực hiện hơn với mọi người trong các văn phòng riêng biệt ngay cả với hệ thống nhắn tin tức thời. Có thể rút ra những thứ và hiển thị mã người và sơ đồ giúp rất nhiều. Điều này không có nghĩa là các nhóm phân phối không thể làm việc - rõ ràng họ có thể và làm được, đó chỉ là một vấn đề khác.
Điều tôi muốn nói là mỗi đội cần ở trong văn phòng riêng gồm 6-8 người (giả sử đó là quy mô của đội). Bằng cách đó, họ có thể tương tác mà không làm phiền các nhóm khác (nếu có) và tiếp tục với công việc của họ mà không bị đội ngũ bán hàng hoặc khách truy cập làm phiền (tại một nơi tôi làm việc bạn đã đi qua cửa trước vào khu vực phát triển).
Nếu bạn đang làm việc với các nhà phát triển khác, nhưng mỗi người đang làm việc trên các dự án riêng biệt, thì một văn phòng chia sẻ có thể hữu ích - nhưng chỉ khi bạn nghiêm khắc về việc tổ chức các cuộc họp đến phòng họp và tôn trọng thời hạn của người khác, v.v.
Hầu hết những người khác là sự thật hiển nhiên.
Công cụ giải quyết duy nhất cho tôi là:
8. Do programmers have quiet working conditions?
Thú vị đó là câu hỏi rất có thể bị thất bại bởi các bài đăng công việc Stack Overflow.
Một số câu hỏi khó thất bại, đặc biệt nếu có nhiều hơn một lập trình viên trong công ty:
1. Do you use source control?
2. Can you make a build in one step?
4. Do you have a bug database?
Hầu hết những người khác tôi không thực sự quan tâm. Ý tôi là, thành thật mà nói:
12. Do you do hallway usability testing?
Có một để phát hiện những kẻ nói dối:
5. Do you fix bugs before writing new code?
Tôi phải nói rằng đó là một "đường cơ sở" tốt, nhưng với bất kỳ công cụ đo lường nào cũng có những yếu tố khác. Ví dụ, không phải một công ty duy nhất mà tôi đã làm việc đã thực hiện Daily Builds (tôi biết, tôi biết), nhưng một số trong số họ đã rất tốt.
Cá nhân tôi có một vài mục khác mà tôi sẽ thêm vào danh sách.
Hơn bất cứ điều gì, đây là những món đồ đã "làm tôi bực mình" từ các nhà tuyển dụng trước đây, và giờ đây chúng là những câu hỏi nhanh mà tôi hỏi về mỗi cơ hội.
Tôi đồng ý với hầu hết các điểm của Joel. Tôi không chắc chắn về "kiểm tra khả năng sử dụng hành lang". Kiểm tra khả năng sử dụng, chắc chắn, nhưng thực sự lấy một ai đó từ hành lang và làm cho họ kiểm tra chương trình của bạn, mặc dù đó không phải là công việc của họ? Đó dường như là một cách tuyệt vời để đánh dấu mọi người.
Bài kiểm tra Joel không kiểm tra mức độ tốt của một đội. Nó kiểm tra xem nhóm của bạn tuân thủ tốt như thế nào với Joel Test.
Đây là một bài kiểm tra tốt hơn về đội của bạn tốt như thế nào. Tôi gọi nó là bài kiểm tra GrandmasterB. Nó có một câu hỏi.
1) Phần mềm bạn viết có tốt không?
Nó không liên quan đến tôi cho dù bạn 'kiểm tra hành lang' hay không, hoặc bạn có kiểm soát nguồn nào, hoặc quá trình xây dựng của bạn là gì (nếu có - không phải mọi làn đường đều có chúng). Thước đo thực sự của một nhóm là chất lượng của phần mềm họ tạo ra.
Về cơ bản, bạn có thể làm theo từng bước của Thử nghiệm Joel, và vẫn kết thúc với mã và sản phẩm tào lao không bao giờ giao hàng. Ví dụ, kiểm soát nguồn không kỳ diệu làm cho một trình mã hóa tốt hơn; nó làm cho mã dễ quản lý hơn Và việc có phiên bản mới nhất của Visual Studio không có nghĩa là ứng dụng của bạn sẽ hoạt động tốt hơn so với khi nó được viết bằng Visual Studio 2005 .
Mặc dù tôi nghĩ rằng nó có ý nghĩa tốt theo nghĩa chung, tôi thấy danh sách này khá tập trung vào loại phần mềm cụ thể mà Fog Creek Software thực hiện ( thu nhỏ ). Điều đó không thực sự đáng ngạc nhiên, vì ông cũng nói về điều đó trên một bài đăng khác, Five Worlds . Và có rất nhiều sự phát triển bên ngoài thế giới đó.
Có một số điều kiện thực sự không có ý nghĩa gì nếu bạn phát triển ví dụ như phần mềm nhúng cho vệ tinh hoặc máy bán hàng tự động, như bản dựng hàng ngày (3) hoặc kiểm tra khả năng sử dụng (12).