Làm thế nào để tạo ra một giáo phái chất lượng của người Viking [đóng cửa]


21

DeMarco và Lister (Peopleware) đề nghị bạn tạo ra một "sự tôn sùng chất lượng" trong nhóm lập trình của bạn. Thật khó chịu, họ không đề nghị bạn làm điều đó như thế nào!

Bất cứ ai cũng có bất kỳ suy nghĩ về làm thế nào để thực hiện điều này?


1
"Sùng bái chất lượng" của bạn sẽ chỉ là thời gian trong chừng mực hiệu quả cho phép. Khi ông chủ nói 'Nó phải được thực hiện vào thứ Sáu' , thì bạn buộc phải giảm chất lượng vì tốc độ. Rõ ràng đây không phải là điều mà các lập trình viên ưa thích. Lý tưởng nhất là chúng tôi thích thời gian để đảm bảo chất lượng!
đảo ngược

1
@WesleyWerner: Điểm tốt. Nhưng tôi nghĩ rằng một "sự tôn sùng chất lượng" cũng nên chấp nhận chăm sóc nợ kỹ thuật, điều này (cuối cùng) sẽ giải quyết vấn đề ông chủ mà bạn đề cập.
Talonx

@invert: Tôi thường trả lời trong những trường hợp như vậy, rằng chúng ta có một tình huống tương tự như định lý CAP ở đây. Chúng tôi có chất lượng, tốc độ và nhân lực, và anh ấy có thể chọn hai.
JensG

Câu trả lời:


37

Kinh nghiệm của tôi là các nhóm phát triển (nhưng nói chung, bất kỳ nhóm nào) bao gồm 3 loại người:

  • những người có một ổ đĩa tích hợp cho chất lượng,
  • những người chỉ vì tiền (bia / cô gái / bất cứ điều gì) và không thể quan tâm ít hơn tuy nhiên bạn cố gắng thúc đẩy họ,
  • những từ "tầm thường" (vì không có từ nào tốt hơn).

Nhóm cuối cùng là nhóm lớn nhất và họ có xu hướng theo đảng cầm quyền. Nếu có đủ người chất lượng trong đội, họ có thể tự mình kéo đa số, tạo ra một vòng xoáy mạnh mẽ lên trên tinh thần và động lực của đội. Tuy nhiên, nếu có quá nhiều chùng, chúng có thể dễ dàng tạo ra hiệu ứng ngược lại, một vòng xoáy của cái chết.

Vì vậy, nhiệm vụ quan trọng nhất đối với người quản lý là chọn và giữ đúng người và loại bỏ những người xấu càng sớm càng tốt . Mặc dù không phải là những người "tầm thường" - họ có thể bị ảnh hưởng để bắt đầu cải thiện, cho vay hỗ trợ cho những ý tưởng tốt của người khác, và một số trong số họ cuối cùng thậm chí có thể trở thành những người theo xu hướng tích cực theo cách riêng của họ.

[Update2] phản ánh câu trả lời của Alb : IMO không cần các nhà phát triển chất lượng chiếm đa số rõ ràng trong nhóm (mặc dù điều đó không gây hại :-). Có một "ngưỡng thiết lập xu hướng" , trên đó các quan điểm và hành vi của một nhóm phụ có thể nhanh chóng trở thành "xu hướng" trong cộng đồng , vì vậy những người khác chú ý và bắt đầu theo dõi. Bạn có thể thấy điều này trong công việc trong xã hội lớn hơn mọi lúc (ví dụ (không) thói quen hút thuốc, sức khỏe & chế độ ăn uống, mốt pop, thực phẩm hữu cơ). Ước tính rất sơ bộ của tôi là nó có thể ở đâu đó khoảng 25-30%, nhưng nó phụ thuộc vào rất nhiều yếu tố. Đây là nơi những người xấu có thể làm tổn thương rất nhiều. Ngay cả một vài người xấu trong nhóm của bạn cũng có thể nâng ngưỡng đó lên đáng kể. [/ Cập nhật2]

Tất nhiên không phải lúc nào cũng có thể thuê đủ những người đứng đầu. Vì vậy, khi phe đầu tiên không đủ mạnh để tự mình điều hành mọi thứ, ban quản lý cần phải giúp đỡ họ. Một vài suy nghĩ về điều này:

  • Tôi nghĩ rằng Scrum có một ý tưởng tốt cho việc này với các bản giới thiệu sản phẩm. Thể hiện tính năng bạn đã triển khai trước khán giả không chỉ bao gồm các đồng đội của bạn mà còn có thể là nhà phát triển từ các nhóm khác, quản lý, thậm chí người dùng ứng dụng có thể là một nguồn tự hào lớn và cũng là nhân tố mạnh mẽ để giúp nhóm phát triển.

  • Một điều nữa là để quản lý lắng nghe một cách nghiêm túc với nhóm phát triển về chất lượng. DeMarco và Lister thậm chí còn đề cập rằng có những công ty / phòng ban nơi các nhóm phát triển có quyền phủ quyết những gì có thể đi vào sản xuất. Nếu họ cảm thấy ứng dụng chưa sẵn sàng cho thời gian chính, họ có thể hoãn phát hành bất kể quản lý muốn gì. Bây giờ đó là khó khăn cho quản lý, nhưng tôi có thể tưởng tượng rằng nó xây dựng tinh thần đồng đội và truyền đạt mạnh mẽ thông điệp rằng chất lượng thực sự quan trọng ở đây, không chỉ ở mức độ từ ngữ.

  • Điều này dẫn đến điểm tiếp theo: để tạo ra một "sự tôn sùng chất lượng", ban quản lý phải hiểu thấu đáo những gì hầu hết các nhà phát triển có kinh nghiệm đã biết: chất lượng đó không phải là một suy nghĩ - nó phải được tích hợp vào sản phẩm ngay từ đầu. Vì vậy, mọi người nên được khuyến khích (và khen thưởng!) Nghĩ về khả năng duy trì lâu dài, phấn đấu cho các giải pháp tốt , thay vì những giải pháp nhanh chóng .

Cập nhật

@Machado trong bình luận của anh ấy đã tạo ra một thay đổi mới cho câu hỏi (ít nhất là với tôi):

Tôi, với tư cách là thành viên nhóm, không phải người quản lý, có thể làm gì để cải thiện chất lượng mã nhóm của mình?

Một vài suy nghĩ:

  • Tiếp tục học hỏi và truyền bá kiến ​​thức xung quanh cho bất cứ ai lắng nghe. Tìm hiểu và sử dụng các thực tiễn tốt nhất trong lĩnh vực chuyên môn của bạn.
  • Hãy tự hào về công việc của bạn .
  • Hai người này gần như sẽ tự nhiên cho phép bạn trở thành một hình mẫu tích cực cho người khác - đặc biệt là người mới và đàn em -; có ý thức về điều này, và tận dụng vai trò của bạn vì lợi ích của cả nhóm. Cách tốt nhất để gây ảnh hưởng đến người khác là bằng ví dụ tích cực.
  • Không chỉ nhìn vào mã, mà toàn bộ quá trình phát triển phần mềm; tiếp tục đặt câu hỏi và cung cấp thông tin phản hồi để tối ưu hóa quá trình phát triển .

Và cuối cùng nhưng không kém phần quan trọng: tìm một nơi mà bạn có thể là một "chàng trai hàng đầu" . Nếu bạn đang ở trong nhóm "tầm thường" ngay bây giờ, hãy cố gắng phát triển bản thân - hy vọng những ý tưởng trên sẽ giúp ích trong việc đó. Nhưng nếu bạn tình cờ ở "tầng dưới" trong nhóm hiện tại của mình, tôi khuyên bạn nên phân tích lý do. Cái gì làm mất lòng bạn? Điều kiện làm việc tồi tệ? Đồng đội? Sự quản lý? Loại công việc? Và điều gì làm bạn phấn khích và thích thú? Bạn có thể cần nói chuyện với đồng nghiệp và / hoặc ông chủ của bạn về điều đó. Hoặc bạn có thể cần tìm kiếm một công việc tốt hơn - hoặc thậm chí là một nghề mới - nơi bạn có thể bắt đầu tỏa sáng. Nó thực sự không đáng để dành một phần đáng kể trong cuộc sống của một người với hoạt động không thỏa mãn hoặc chán nản.

Cũng có thể là bạn buộc phải tiếp tục công việc hiện tại, không tối ưu do các yếu tố bên ngoài (thiếu cơ hội việc làm tốt hơn, cần phải trả các hóa đơn, v.v.) - điều đó xảy ra mọi lúc mọi nơi. Ngay cả trong trường hợp này, hãy cố gắng tận dụng tốt nhất. Sản xuất công việc chất lượng (nhiều như hoàn cảnh cho phép) tự nó là một phần thưởng, giúp giữ lòng tự trọng của bạn, và giữ cho mình lành mạnh và cởi mở trong thời gian dài. Do đó, khi một cơ hội cho một cái gì đó tốt hơn xuất hiện, bạn nên chuẩn bị tốt hơn để nắm lấy nó.


4
Một lời khuyên nguy hiểm. Nếu OP thuộc nhóm thứ 2/3 thì sao? ;)

1
Câu trả lời tuyệt vời, tôi chưa bao giờ nghĩ về nó như thế này, nhưng nó rất có ý nghĩa.
Alb

9
@ Nhà phát triển nếu có, họ sẽ không đọc DeMarco và Lister hoặc đặt câu hỏi ở đây.
Alb

Tôi nghĩ rằng câu hỏi được định hướng nhiều hơn từ quan điểm của thành viên trong nhóm. Nếu quản lý thực sự muốn chất lượng, họ sẽ lắng nghe các nhà phát triển hàng đầu / cốt lõi của họ. Tôi, với tư cách là thành viên nhóm, không phải người quản lý, có thể làm gì để cải thiện chất lượng mã nhóm của mình?
Machado

1
@ Thorbjørn, câu hỏi tuyệt vời! Tôi thừa nhận tôi đã bỏ lỡ điều này trong hầu hết các nơi làm việc của tôi cho đến nay. Hy vọng không có vẻ quá tự phụ, tôi đã luôn tìm kiếm đồng đội để tìm kiếm và học hỏi, nhưng tôi hiếm khi tìm thấy họ. Thế là tôi chuyển sang sách và internet. Càng nhiều càng tốt, tôi tìm thấy những hình mẫu trong Martin Fowler, chú Bob Martin et al. Và gần đây trong cộng đồng SO! Đó là một nơi tuyệt vời để học hỏi. Cũng là một "nhà cung cấp kiểm tra thực tế" mạnh mẽ. Những kinh nghiệm khiêm tốn tiết lộ giới hạn và khoảng trống trong kiến ​​thức của một người có thể khó thực hiện, nhưng đối với tôi rất lành mạnh.
Péter Török

2

Câu trả lời tuyệt vời của Péter Török để nhấn mạnh rằng bạn sẽ chỉ quản lý việc này với phần lớn những người tốt. Một khi bạn có những người tốt, bạn cần nhắm đến cách tiếp cận cà rốt hơn là cây gậy. Trao quyền cho các nhà phát triển, cho phép họ sở hữu các dự án / nhiệm vụ và khuyến khích cạnh tranh về chất lượng, có thể mọi người sẽ trình bày ngắn về cách họ cải thiện tính chất trong các dự án. Các nhà phát triển giỏi sẽ có động lực để gây ấn tượng với các đồng nghiệp của họ.


+1 Điểm tốt về động lực. Tôi rõ ràng là hiểu lầm về đa số; Tôi cập nhật câu trả lời của tôi để làm rõ.
Péter Török

2

Ngoài các nhận xét của Peter (thực sự là vấn đề cốt lõi), bạn cần đảm bảo chất lượng không phải là một tính năng được thêm vào sau này.

Cụ thể hơn:

  • Xóa bỏ mọi dấu vết của suy nghĩ 'Chúng tôi sẽ dọn sạch nó sau'. Thay vào đó hãy nỗ lực ngay từ đầu để hoàn thành công việc một cách chính xác.
  • Yêu cầu các thay đổi được xem xét và xử lý thông qua một số quy trình QA liên quan đến người nào đó không phải là nhà phát triển.
  • Lực lượng suy nghĩ về chất lượng trong giai đoạn đầu của dự án. Giữ những thứ như "làm thế nào dễ dàng với điều này để người khác duy trì" tập trung trong quá trình phát triển.
  • Theo dõi và báo cáo về các lỗi xảy ra. Nếu có xu hướng, hãy tìm cách chống lại nguyên nhân gốc rễ của bọ.
  • Giới thiệu suy nghĩ về phần mềm như một nghề thủ công có thể được cải thiện và điều mà người sáng tạo có thể tự hào.

1

Tôi muốn nói rằng cách tốt nhất là khuyến khích chất lượng hơn sản lượng. Đây là một trong những tiền đề của phong trào Lean Software (dựa trên Lean Sản xuất). Tôi đã viết một bài đăng blog dài thảo luận về những gì Lean là tất cả về . Tôi nói với bạn làm thế nào để tạo ra một giáo phái chất lượng. Đầu tư vào nhân viên của bạn và để họ đầu tư vào công ty của bạn (không phải đầu tư tiền tệ, mà là đầu tư cá nhân).

Dan Pink đã có một cuộc nói chuyện tuyệt vời tại TED về những gì thúc đẩy chúng tôi. Trong khi anh ta không tham khảo nó một cách cụ thể. Hệ thống nhu cầu của Maslow giải thích hoàn hảo hiện tượng quan sát được. Miễn là nhà tuyển dụng giải quyết hai nhu cầu đầu tiên (nghĩa là trả đủ tiền để tiền không phải là vấn đề), tất cả những gì còn lại là Belonging, Esteem và Self-Actualization.

  • Cung cấp một cộng đồng vững chắc để thuộc.
  • Tạo một môi trường nơi nhân viên cảm thấy thoải mái khi phạm sai lầm để họ có thể xây dựng lòng tự trọng khi họ đạt được thành tích.
  • Trao cho các nhà phát triển của bạn dây cương để họ có thể đưa ra các quyết định quan trọng để tự thực hiện

Chất lượng không phải là thứ có thể bị sai khiến ... thay vào đó nó được kích hoạt. Tin tưởng nhân viên của bạn để làm những gì tốt nhất và ra ngoài đường. Cuối cùng, bạn sẽ phải nói với họ rằng họ cần phải rời đi. Thay vì yêu cầu họ đặt thêm giờ

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.