Bí quyết hiệu quả là mã chất lượng chứ không phải người quản lý hiệu quả

Một trong những nghề nghiệp ngu ngốc nhất là quản lý các lập trình viên. Không phải tất cả, mà là những người không phải là lập trình viên. Những người cho rằng có thể “tăng” hiệu quả (hay tăng “hiệu quả”?) bằng cách sử dụng các phương pháp từ sách vở. Thậm chí không cần đọc những cuốn sách tương tự, video này là một cuốn sách của người gypsy.

Những người chưa bao giờ viết mã. Những bộ phim Hollywood về lập trình viên được sản xuất dành cho những người - à, những người xem email bằng dòng lệnh. Những người không quan tâm đến bất cứ điều gì khác ngoài các chỉ số, thời hạn và tiền lương của chính họ.

Những người chiếm đa số.

Nhưng họ là những kẻ ngốc vì một lý do khác. Họ muốn hiệu quả, hoặc ít nhất là hiệu quả (thôi nào, người quản lý, Google sự khác biệt là gì) mà không hiểu cả hai. Không hiểu chung về bản chất, quá trình đạt được kết quả, những tổn thất xảy ra trong quá trình này, chi phí phát triển. Tóm lại, làm việc với một lập trình viên như thể anh ta là một chiếc hộp đen.

Họ đến với ban quản lý của các lập trình viên vì một lý do chính xác: có sự cường điệu, tiền bạc, thị trường và một loạt những kẻ ngốc giống nhau. Có một nơi để bị lạc.

Nếu có sự cường điệu trong sản xuất lắp ráp cơ khí, chúng tôi sẽ chạy đến đó. Toa xe ga hút. Tôi sẽ không ngạc nhiên khi anh chàng bán cây thông Noel ở khu phố của chúng tôi vào tháng XNUMX là một giám đốc CNTT đang đi nghỉ.

Tóm lại, nếu có thể, hãy bắn vào cổ những kẻ này. Đừng lo lắng, họ sẽ tìm được việc làm. Không ai trong số họ sẽ làm được điều gì tử tế cho đến khi họ trở thành một lập trình viên. Bởi vì anh ta không hiểu bản chất, cơ chế, logic của quá trình mình điều khiển.

Được rồi, đủ về người quản lý. Bây giờ đến vấn đề chính dành cho các lập trình viên. Cách tăng hiệu quả phát triển bằng cách học cách viết mã chất lượng cao.

Để tăng hiệu quả, bạn cần giải quyết vấn đề nhanh hơn mà không làm giảm chất lượng. Để giải quyết vấn đề nhanh hơn, bạn cần có khả năng viết ngay mã chất lượng cao. Và “chất lượng cao”, “viết” và “ngay lập tức”. Hãy để tôi giải thích bằng một phép ẩn dụ.

Viết mã chất lượng cao cũng giống như nói chính xác một ngoại ngữ. Khi bạn không biết một ngôn ngữ, bạn sẽ dành nhiều thời gian để hình thành suy nghĩ của mình bằng ngôn ngữ đó.

Nếu bạn cần nói điều gì đó gấp, bạn chỉ dính vào một số từ, thường không đúng, bạn quên mất mạo từ, trật tự từ đúng, chưa kể thì của động từ và phát âm kém.

Nếu có thời gian để hình thành câu trả lời, bạn sẽ phải mở từ điển hoặc một công cụ dịch trực tuyến và dành nhiều thời gian để hình thành suy nghĩ của mình. Tuy nhiên, cảm giác đó vẫn sẽ khó chịu: bạn nói ra câu trả lời và không biết nó có đúng hay không. Đoạn mã cũng vậy - nó dường như đã được viết ra, nó dường như hoạt động nhưng liệu nó có chất lượng tốt hay không thì vẫn là một điều bí ẩn.

Nó hóa ra là một sự lãng phí gấp đôi thời gian. Phải mất thời gian để đưa ra câu trả lời. Cũng cần có thời gian để hình thành câu trả lời này - và không quá ít.

Nếu có kỹ năng viết mã chất lượng cao, thì câu trả lời có thể được hình thành ngay lập tức, ngay khi nó đã chín muồi trong đầu mà không cần tốn thêm thời gian cho việc dịch thuật.

Kỹ năng viết mã chất lượng cao sẽ giúp ích khi thiết kế kiến ​​trúc. Đơn giản là bạn sẽ không nghĩ đến những lựa chọn không chính xác, không thể thực hiện được hoặc có sẵn trong đầu mình.

Tóm lại: kỹ năng viết mã chất lượng cao sẽ tăng tốc đáng kể việc giải quyết vấn đề.

Nhưng đó không phải là tất cả. Nhờ các nhà quản lý ủng nỉ, có một nhược điểm - chúng tôi không có lý do để viết mã chất lượng cao. Người quản lý không nhìn vào mã, khách hàng không nhìn vào mã. Chúng tôi hiếm khi hiển thị mã cho nhau, chỉ đôi khi, trong một số dự án có một “trình kiểm tra” mã được chỉ định hoặc tái cấu trúc định kỳ.

Hóa ra là trong hầu hết các trường hợp, mã tồi tệ sẽ được chuyển đến sản xuất hoặc tới khách hàng. Một người đã viết những dòng code dở tệ sẽ hình thành một kết nối thần kinh ổn định - không chỉ có thể viết những dòng code dở tệ mà còn cần thiết - điều đó được chấp nhận và họ thậm chí còn phải trả tiền cho việc đó.

Kết quả là kỹ năng viết code chất lượng cao không có cơ hội phát triển chút nào. Mã được viết bởi một nhân viên có điều kiện không bao giờ được kiểm tra bởi bất kỳ ai. Lý do duy nhất khiến anh ấy học lập trình bình thường là động lực bên trong.

Nhưng động lực bên trong này mâu thuẫn với các kế hoạch và yêu cầu về hiệu quả và năng suất. Mâu thuẫn này rõ ràng không được giải quyết theo hướng có lợi cho mã chất lượng cao, bởi vì mọi người thậm chí không chỉ trích những người có mã tồi. Và vì không hoàn thành kế hoạch - thậm chí là như vậy.

Tôi nên làm gì? Tôi thấy và đề xuất hai con đường có thể kết hợp được.

Đầu tiên là hiển thị mã của bạn cho ai đó trong công ty. Không phải phản ứng (khi được yêu cầu/ép buộc), mà là chủ động (ừ, anh bạn, làm ơn xem mã của tôi). Điều chính ở đây là không đăng nước mũi ngọt ngào, không cố gắng đưa ra những lời chỉ trích về mã một cách lịch sự. Nếu mã là tào lao, chúng tôi sẽ nói như vậy: mã đó là tào lao. Tất nhiên là kèm theo những lời giải thích và khuyến nghị về cách làm cho nó tốt hơn.

Nhưng con đường này cũng bình thường thôi. Khả năng ứng dụng của nó phụ thuộc vào thời điểm xảy ra tiếp xúc. Nếu tác phẩm đã được đưa vào sản xuất và hóa ra mã đó là rác rưởi thì việc làm lại nó cũng chẳng ích gì. Chính xác hơn là nguyên nhân - các chỉ số cũng sẽ bị chùng xuống. Các nhà quản lý sẽ lao vào và đè bẹp bạn với những yêu cầu về hiệu quả. Và thậm chí đừng cố giải thích với họ rằng đoạn mã tồi tệ đó chắc chắn sẽ quay trở lại dưới dạng lỗi - nó sẽ phản tác dụng với bạn. Bạn chỉ có thể cam kết không tái phạm điều này nữa.

Nếu công việc vẫn chưa được giao hoặc mới bắt đầu, thì việc đổ rác vào mã (hoặc dự án, ý tưởng của nó) có thể có ý nghĩa khá thực tế - người đó sẽ làm việc đó một cách bình thường.

Cách thứ hai, cách thú vị nhất, là phát triển nguồn mở ngoài giờ làm việc. Mục tiêu là gì: để một nhóm lập trình viên, cụ thể là lập trình viên, xem mã của bạn và nói về nó. Mọi người trong công ty đều không có thời gian. Nhưng các lập trình viên trên toàn thế giới vẫn không có việc gì để làm, và nếu bạn viết điều gì đó hữu ích từ góc độ ứng dụng, họ chắc chắn sẽ nhìn vào bên trong.

Theo tôi, thủ thuật chính là viết mã ngoài giờ làm việc, vì sự mâu thuẫn giữa chất lượng mã và tốc độ cung cấp kết quả sẽ không có tác dụng. Viết sự phát triển của bạn trong ít nhất một năm. Cả thời hạn, thông số kỹ thuật, tiền bạc hay sếp đều không gây áp lực cho bạn. Hoàn toàn tự do và sáng tạo.

Chỉ khi có khả năng sáng tạo tự do, bạn mới hiểu và cảm nhận được mã tuyệt vời là gì, nhìn thấy vẻ đẹp của ngôn ngữ và công nghệ cũng như cảm nhận được sự hấp dẫn của các nhiệm vụ kinh doanh. Chà, bạn sẽ học cách viết mã chất lượng cao.

Đúng, điều này sẽ đòi hỏi bạn phải dành thời gian cá nhân. Cũng giống như bất kỳ sự phát triển nào khác. Hãy xem nó không phải là một khoản chi phí mà là một khoản đầu tư – vào bản thân bạn.

Nguồn: www.habr.com

Thêm một lời nhận xét